Facebook喜欢WordPress中的500错误

时间:2013-05-30 19:37:01

标签: facebook iframe

当我点击网站上的“赞”按钮时,我收到一系列错误。

  

阻止访问来源“https://www.facebook.com”的框架   原点为“http://static.ak.facebook.com”的框架。框架   请求访问具有“https”协议,正在访问该帧   有一个协议“http”。协议必须匹配。

     

POST https://www.facebook.com/plugins/like/connect 500(OK)

这是代码:

<div class="feedback facebook">
    <iframe allowtransparency="true" src="http://www.facebook.com/plugins/like.php?href=<?php echo get_permalink(); ?>&amp;layout=button_count&amp;show_faces=false&amp;width=80&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" style="border: medium none; overflow: hidden; width: 160px; height: 21px;"></iframe>
</div>

不确定我的代码有什么问题。我试过urlencoding URL。非常感谢任何想法。

1 个答案:

答案 0 :(得分:0)

  

请求访问的帧具有“https”协议,帧为   access具有“http”协议。协议必须匹配。

你的链接显然正在向https://www.facebook.com/plugins/like/connect发送HTTP POST,当它应该对http://www.facebook.com/plugins/like/connect进行HTTP POST时。

据说,您的iframe代码示例并不完全有用,因为重要的部分是函数'get_permalink()'返回的内容(此处描述:http://codex.wordpress.org/Function_Reference/get_permalink

这样做:

替换

src="http://www.facebook.com/plugins/like.php?href=<?php echo get_permalink(); ?>&amp;layout=button_count&amp;show_faces=false&amp;width=80&amp;action=like&amp;colorscheme=light"

。通过

src="http://www.facebook.com/plugins/like.php?href=<?php echo str_replace("https","http",get_permalink()); ?>&amp;layout=button_count&amp;show_faces=false&amp;width=80&amp;action=like&amp;colorscheme=light"

同样 查看以下 (以及链接)

  

2013年7月迁移后,Like按钮需要一个绝对URL   href参数。

https://developers.facebook.com/roadmap/#july2013