2012-02-14 107 views
1

新的Facebook和Symfony 1.4開發人員遇到了一些問題。Facebook和Symfony 1.4的問題

首先,我遇到了添加到時間軸按鈕出現在我需要的頁面上的問題。我的網站似乎顯示Facebook加載圖像,然後在明顯加載後沒有顯示按鈕。我瀏覽了許多不同的網站(包括開放圖譜的FB教程),所有人都表示將腳本放在開幕主題標籤之後。我已經把它放在我的layout.php中的文件,這樣我就不必把它在多個地方:

layout.php中

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" xmlns:fb="http://ogp.me/ns/fb#" xmlns:og="http://ogp.me/ns#"> 
.... 
<body> 
    <div id="fb-root"></div> 
    <script> 
     window.fbAsyncInit = function() { 
      FB.init({ 
       appId  : 'APP_ID', 
       status  : true, 
       cookie  : true, 
       xfbml  : true, 
       oauth  : true 
      }); 
     }; 

     (function(d, s, id) { 
      var js, fjs = d.getElementsByTagName(s)[0]; 
      if (d.getElementById(id)) return; 
      js = d.createElement(s); js.id = id; 
      js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=APP_ID"; 
      fjs.parentNode.insertBefore(js, fjs); 
     }(document, 'script', 'facebook-jssdk')); 
    </script> 
    <div id="container"> 

我已經換APP_ID在適當情況下並放置在加在一個視圖時間軸按鈕:

viewSuccess.php

<?php // Facebook Post-to-Timeline Button for this user's created recipe ?> 
<?php if($recipe->getUserId() == sfUserTools::getConnectedUser()->getId()): ?> 
    <fb:add-to-timeline show-faces="false" mode="button"></fb:add-to-timeline> 
<?php endif ?> 

我不確定它是否存在放置JSSDK腳本的問題,或者Symfony在視圖頁面中沒有看到什麼。請注意,我還沒有爲Open Graph設置我們的應用程序的操作和對象設置,因此發佈到時間表上並不是我目前關注的內容。任何想法或建議爲新手?

+0

有沒有人有任何想法或建議?也許是因爲Symfony被設置爲不同的模塊而不是隻有一個頁面,我需要將JSSDK添加到按鈕所在的每個頁面上? – 2012-02-15 14:55:59

回答

0

您是否嘗試通過FB.init上的access_token或perms?

FB.init({ 
    appId    : "<?php echo sfConfig::get('app_facebook_api_key') ?>", 
    status    : true, // check login status 
    cookie    : true, // enable cookies to allow the server to access the session 
    xfbml    : false, // parse XFBML 
    perms    : 'read_stream, publish_stream', 
    access_token   : "ACCESS_TOKEN_HERE", 
    frictionlessRequests : true 
    }); 
+0

請小心,因爲此按鈕將在2012年8月棄用。文檔:https://developers.facebook.com/roadmap/#august-2012 我們將刪除添加到時間線插件。如果您嵌入添加到時間線插件,我們將使用publish_actions權限自動將範圍參數添加到登錄按鈕。 – 2012-05-23 17:35:07