所以我有一个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中做到了这一点。
如果是这样,那么我在app_id中放了什么?
我是否需要将外部网页注册为Facebook应用以获取应用ID?
答案 0 :(得分: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页面。如果单击“获取代码”按钮,您将获得一些类似以下内容的代码片段:
<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应该可以工作!
希望这有助于其他人!