6

所以我有一个 Facebook 页面设置。我有一个外部网站,我想在上面使用 facepile。这个想法是当有人访问我的外部网站时,他们可以看到他们的哪些 Facebook 朋友“喜欢”了 Facebook 页面。

我去了这里https://developers.facebook.com/docs/plugins/facepile/它说

Facepile 插件显示与您的 Facebook 页面或应用程序建立联系的人的 Facebook 个人资料照片。

所以看起来我可以用我的 Facebook 页面做到这一点。

我找到了以下代码

    <script>
  window.fbAsyncInit = function() {
    // init the FB JS SDK
    FB.init({
      appId      : '12345667809845',      // App ID from the app dashboard
      status     : true,                  // Check Facebook Login status
      xfbml      : true                   // Look for social plugins on the page
    });

    // Additional initialization code such as adding Event Listeners goes here
  };

  // Load the SDK asynchronously
  (function(){
     // If we've already installed the SDK, we're done
     if (document.getElementById('facebook-jssdk')) {return;}

     // Get the first script element, which we'll use to find the parent node
     var firstScriptElement = document.getElementsByTagName('script')[0];

     // Create a new script element and set its id
     var facebookJS = document.createElement('script'); 
     facebookJS.id = 'facebook-jssdk';

     // Set the new script's source to the source of the Facebook JS SDK
     facebookJS.src = '//connect.facebook.net/en_US/all.js';

     // Insert the Facebook JS SDK into the DOM
     firstScriptElement.parentNode.insertBefore(facebookJS, firstScriptElement);
   }());
</script>

然后再往下我有

<div class="fb-facepile" data-app-id='12345667809845' data-href="http://facebook.com/myfacebookpage" data-action="like" data-max-rows="1" data-colorscheme="light" data-size="medium" data-show-count="true"></div>

(重要的网址和数字已更改以保护无辜者)

如您所见,上面的代码总是在谈论 Facebook 应用程序而不是页面。如果有人能告诉我我做错了什么,我会很高兴的!

更新:

所以澄清一下:

我想做的是让 Facepile 在外部网站上显示有多少人喜欢我的 Facebook 页面。在我看来,我插入外部页面的代码中的某些内容需要告诉 Facepile 它需要从哪个页面获得喜欢。从下面的评论来看,您似乎在 data-href 中这样做了。

  1. 如果是这样,那么我应该在 app_id 中添加什么?

  2. 我是否需要将外部页面注册为 facebook 应用程序才能获取应用程序 ID?

4

1 回答 1

2

所以答案是肯定的。您可以将 FacePile 与 Facebook 页面一起使用。但是你需要先做一些其他的事情。

您需要将您的外部页面注册为 Facebook 应用程序。你可以在这里做

https://developers.facebook.com/apps

并创建一个新应用。你需要指定你想用这个应用程序做什么,我发现说我想用 Facebook 登录最简单(注意这个功能不需要在你的网站上存在,你只需要为 FaceBook 指定)。您在“站点 URL”中的“登录到 Facebook”选项下添加您的外部站点 URL,瞧,您的外部网站 url 上有一个 facebook 应用程序。然后,您还有一个应用程序 ID。

所以当你去

https://developers.facebook.com/docs/plugins/facepile/

要获取您使用刚刚创建的 Facebook 应用程序的代码片段(单击“获取代码”按钮后会出现一个下拉框,或者您可以在对话框中输入数字),“URL”是 Facebook 的 url您想要喜欢的页面。如果单击“获取代码”按钮,您将获得一些代码片段,如下所示:

<div id="fb-root"></div>
<script>
(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=<YOUR_APP_ID_HERE>";  
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script','facebook-jssdk'));
</script>

<div class="fb-facepile" data-href="http://facebook.com/<YOUR_PAGE_URL_HERE" data-max-rows="1" data-colorscheme="light" data-size="medium" data-show-count="true"></div>

将它们放在您的外部页面上(替换值之后),facepile 应该可以工作!

希望这对其他人有帮助!

于 2013-12-03T06:07:30.380 回答