2

我搜索了互联网,甚至突然进入#facebook 无济于事。我已经尝试过 FBXML 代码,它的行为方式相同:如果您没有登录 Facebook,Like 按钮将不会呈现到页面。

奇怪的是代码被处理并且FB将它的魔力插入到我的类似fb的div中,但是所有可以看到的元素的宽度/高度都为0。就故障排除或发现任何有用的线索。

下面是我正在使用的代码。FB SDK 和类似 fb 的元素直接来自https://developers.facebook.com/docs/reference/plugins/like/

在头部:

<meta property="fb:app_id" content="APP ID"/>

就在body标签之前:

<div id="fb-root"></div>
<script>
    window.fbAsyncInit = function() {
        // Additional initialization code such as adding Event Listeners goes here
        FB.Event.subscribe('edge.create',
                function(response) {
                    $.trackEvent.apply(jQuery, ['Outbound Links', 'Click', 'Facebook']);
                }
        );
    };

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

在页面正文中:

<div class="fb-like" data-href="http://www.facebook.com/mypage" data-send="false" data-layout="button_count" data-width="50" data-show-faces="false"></div>
4

5 回答 5

3

我已经能够确认问题出在权限上!不是我的应用程序的权限,而是我打算让人们喜欢的我的 FB 页面的权限。

我的 FB 页面有 18 岁以上的年龄限制,这导致了这个问题。我删除了限制并将其设置为 13+,并且 jsFiddle 代码按预期工作。

如果没有 zeebonk 的帮助,我将无法做到这一点,他给了我一个直接的测试,让我可以开始推理过程。:)

于 2013-02-11T16:01:58.157 回答
0

您需要确保的另一件事是您的 Facebook 页面实际上已发布,即对公众可见。当您第一次设置页面时,它默认为未发布。请务必取消选中 Facebook 页面设置的“管理权限”部分中标题为“页面可见性”的第一项。

有这个问题并尝试了一切来解决它。一旦我真正发布了页面,当我注销时,facebook 按钮就会开始出现。

于 2013-06-17T12:14:57.590 回答
0

我刚刚遇到了完全相同的问题。如果我在同一个浏览器中登录 Facebook,它会显示类似框。如果我没有登录它就不会显示[在所有四种主要浏览器中都试过]。在高低搜索答案后,您只需在 Facebook 之类的页面设置中将年龄限制设置为“13 岁以上”即可解决问题。为 creativetim 提供解决方案的道具。

于 2013-08-27T18:52:22.250 回答
0

我遇到了同样的问题,将“页面可见性”从“未发布的页面”更改为“已发布的页面”。

于 2014-05-12T19:45:36.190 回答
0

As creativetim mentioned this is related to Facebook's display permissions. It is, however, not limited to the age restriction. You must remove Country restrictions as well.

于 2015-01-30T15:02:12.940 回答