这不是火箭科学。看起来它应该是如此简单,我已经明确地遵循了文档,并以100种不同的方式对其进行了修改。但我不能为我的生活在所有正确的地方得到所有正确的动作,我能找到的每个教程或SO帖子现在都已被弃用。
我已经设置了Facebook应用。
我在身体开口处有这个:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '722388634521999',
xfbml : true,
version : 'v2.2'
});
};
(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/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
我有你能想象的每个元标记。
我有分享按钮代码,我想要分享按钮:
<div class="fb-share-button" data-href="http://gd-web.brooklynunited.com" data-layout="button"></div>
我只有两个模板上的Facebook共享,但一个共享用户所在的显式页面(个别博客帖子),另一个共享全局网站网址(即不是用户所在的页面)。用户应该能够单击FB共享按钮并获取我在元标记中填充的标题,描述和图像以发布到他们的个人资料。对不对?!
我觉得我正在服用疯狂的药片。
值得注意的是,想要一个模态。
我所拥有的将激活分享,但不会拉动任何元。没有描述,没有图像,虚无..对不起,应该提供更全面的解释。
任何帮助都非常感谢,并且您是互联网上的BFD(大笔交易),请将此作为博客文章或为Facebook工作并帮助他们撰写文档。
结束。
答案 0 :(得分:0)
我认为问题在于Facebook将您的开发网站视为重定向到生产网站。当FB抓取工具访问og:url元标记时,它会立即转到该URL并查找有关内容对象的更多信息。
我确信,如果您将og:url更改为您的开发网址,则共享将按预期工作。追踪此类问题的一个很好的工具是Facebook Object Debugger。
答案 1 :(得分:0)
更新:og:url更改必须在共享页面(index.html)上进行,而不是我所在的页面。然后,根据@ chris上面的评论,清除Facebook上基本URL和两个模板URL上的缓存数据。这些都不会在本地工作,只能在实时网址上使用。
还必须将FB管理员ID更改为我自己的个人ID,而不是组织的ID,原因完全不明原因。
我将自己做一个明确的博客文章。浪费了很多时间。
谢谢,全部!