我无法让Like按钮在一个站点上工作。 http://www.room13canada.ca/test.html 单击该按钮时会触发到Facebook,但回调会撤消该呼叫吗?我已经删除了所有代码以确保没有js或css或任何违反按钮的内容。 请查看pagesource - 它没有意义,为什么它不起作用。
如果我改变
<fb:like href="www.room13canada.ca"
到
<fb:like href="www.cnn.com"
它就像一个魅力?
任何帮助都会很棒
答案 0 :(得分:1)
您是否考虑过使用iframe
方法尝试?
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.room13canada.ca%2Ftest.html&layout=standard&show_faces=true&width=450&action=like&colorscheme=light&height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>
答案 1 :(得分:1)
嗯,我也有像插件这样的facebook的问题,也听到人们说这是一个facebook的bug。在gOOgle上搜索了很多....我发现了一个很好的结果,并且不认为这是一个fb bug。
您必须将此文件添加到网站:
的标题中<meta property="og:image" content="http://ia.media-imdb.com/images/rock.jpg" />
Meta标签的属性(facebook喜欢Meta标签)==&gt; og:image - 应在图表中表示对象的图像URL。
将“http://ia.media-imdb.com/images/rock.jpg”替换为真实的图像路径。
对于Wordpress用户:
在标题文件的头部添加以下代码==&gt;
<?php $img= get_post_meta($post->ID, 'image', true); if ($img): ?>
<meta property="og:image" content="<?=$img ?>"/>
<? endif; ?>
这就是全部...希望这对你们都有用!!分享您的经验......
答案 2 :(得分:0)
首先,我将给出我的假设:如果Facebook URL Scraper试图抓取您的页面,并且无法访问它(例如,如果它正在等待审核并且Facebook Scraper bot被重定向到“登录”页面),社交插件,如喜欢按钮和评论将无法正常工作,因为Facebook认为该网址“无法访问”。 Facebook需要24小时才能再次尝试抓取该页面 - 在此之前,Facebook将认为它仍无法访问。
以下是Facebook says关于页面被抓取的频率以及如何强行刮擦的内容:
Facebook每24小时擦除一次页面,以确保属性是最新的。当Open Graph页面的管理员单击Like按钮并将URL输入Facebook URL Linter时,页面也会被删除。 Facebook会在您的网址上观察缓存标头 - 它会按优先顺序查看“过期”和“缓存控制”。但是,即使您指定的时间较长,Facebook也会每24小时抓一次页面。
请注意,Facebook URL Linter已重命名为Facebook Object Debugger。
我对底层问题错了。我会告诉你我的经历,你可以决定。
我们的网站是一个博客集合,所有博客文章都有一个“喜欢”按钮,使用相同的代码生成(除了喜欢的URL)。默认情况下,所有博客帖子都保存为“草稿”状态,除非您已登录,否则无法使用。如果匿名用户尝试访问“草稿”博客帖子,他将被重定向到登录页面。
几个月前,我们遇到了“喜欢”按钮问题,虽然错误表现略有不同:点击“赞”按钮时,“URL无法访问”。这仅发生在具有“喜欢”按钮并且没有立即发布的帖子上(例如,它们被保存到“草稿”状态)。当我将“草稿”视图更改为不显示Facebook社交插件时,我认为这已得到修复。
然而,我注意到,有时候,如果你点击特定帖子上的“赞”按钮,“喜欢”弹出窗口会在屏幕上闪烁片刻然后消失,没有“喜欢”行动发生。不同的行为,同样的问题:“喜欢”按钮不起作用。
与此同时,每个其他帖子上的“赞”按钮工作得很好!我测试了这个,然后回到了一个我不能“喜欢”的帖子。相同的行为:flyout出现并消失,没有“喜欢”发生。
我使用Chrome的开发人员工具来查看正在进行的HTTP请求,将工作“喜欢”的请求/响应与无法正常工作的“喜欢”进行比较。 “赞”按钮JavaScript向http://www.facebook.com/plugins/like/connect发出HTTP POST请求并返回一些JavaScript。我可以说,HTTP POST请求在工作和非工作按钮之间是相同的,但响应是不同的。下面是一个类似工作的JavaScript响应,然后是一个无效的JavaScript响应:
for (;;);{"__ar":1,"payload":null,"jsmods":{"require":[["Plugin","connect",[],["http:\/\/www.hslda.org\/cms\/?q=blog\u00252Fpeeking-through-fence","10151028997762924"]]]}}
for (;;);{"__ar":1,"payload":null,"jsmods":{"require":[["Plugin","disconnect",[],["http:\/\/www.hslda.org\/cms\/?q=blog\u00252Fpoem-just-you"]]]}}
我注意到两个区别:工作版本“connect”,而非工作版本具有“disconnect”,工作版本有一个看起来像ID的附加参数。我猜它是这个特别“喜欢”事件的ID。
我做了一些谷歌搜索,但找不到明确的答案。试图调试这个,我使用了Facebook Object Debugger。它发现了一些值得修复的“Like Button Warnings”和“Open Graph Warnings”,但我认为它们不是问题所在 - 因为对于像按钮这样工作的URL以及带有类似按钮的URL,它们是相同的没用。
然后我决定去Facebook Social Plugin page for the Like Button。我放弃了不可爱博客文章的网址,并试着喜欢它。有效。我想知道,“页面上的按钮是否仍然坏了?”我不喜欢它,因为我已经喜欢它了。所以我问一个同事尝试并喜欢这个帖子,这对他有用。然后我让我的同事不像帖子,我不喜欢它(所以我们又不喜欢),然后我尝试再次喜欢它,使用博客文章中的类似按钮。它奏效了。
所以,似乎一旦我“强迫”再次抓取页面,它就开始工作了。但也有可能通过Like按钮页面“强制”类似的东西也破坏了......不确定。