Facebook喜欢WordPress中的500错误

Alx*_*ejo 5 iframe facebook

当我点击网站上的"赞"按钮时出现一系列错误.

阻止来自原始" 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>
Run Code Online (Sandbox Code Playgroud)

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

Bre*_*ell 0

请求访问的帧具有“https”协议,被访问的帧具有“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"
Run Code Online (Sandbox Code Playgroud)

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"
Run Code Online (Sandbox Code Playgroud)

请查看以下内容(以及链接)

2013 年 7 月迁移后,“赞”按钮需要在 href 参数中使用绝对 URL。

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