我们已经有很长时间正确分享到Facebook的新闻文章,但截至上周末,我们开始看到错误的og:图像分享到Facebook。使用调试工具,第一次获取它时,我收到一个警告"图像太小"这可能是它默认为另一个图像的原因。但有问题的图像并不算小。这可能是亚马逊Bucket中我的图像标题的一些问题吗?无法确定问题所在。
再次按刮2次然后我得到正确的og:image
为了解决这个问题,我添加了og:image:width和og:image:height但到目前为止无济于事。
答案 0 :(得分:2)
添加高度&宽度对每个人来说都不够。 我为我的网站做了同样的事情并没有修复它。它总是需要第二次刮擦,然后它将重新获取正确的图像。 即使添加了所有的元OG标签也没有改善这种情况。 我注意到很多其他人遇到同样的问题,并增加了身高和数量。 width meta无法解决它。
在这种情况下,您需要在页脚中添加 iframe ,并将其设置为不可见,并在页面加载时转到facebook调试程序,并再次刮取该网址你自动了。 这是根据Facebook的解决方案。你需要第二次刮(在“预缓存图像”下参考best practises)。这是手动完成的反效果,所以只需在页脚中添加以下代码即可。
<iframe style="width:0; height:0; margin:0; padding:0; border:0; position:absolute;" src="https://developers.facebook.com/tools/debug/sharing/?q=<?php the_permalink(); ?>"></iframe>
要记住的一些注意事项:
此指向调试工具的链接在撰写本文时(2017年8月)有效。我已经看到过去的链接不同了,所以如果以后链接发生了变化,只需适当更改iframe中的链接。
“?q =”之后的网址部分是您将链接发布到Facebook的位置。我使用了the_permalink(),因为它会自动检查页面的url并将其放入链接中。如果您想为单个帖子执行此操作,请将其替换为您的实际链接。这是一个WordPress的PHP页面。如果这不是您网页的正确代码,请将其更改为您正在使用的语言。
我希望这可以帮助每个人寻找这个奇怪的Facebook错误的答案。它本可以救我~~ 6小时。 干杯
感谢用户Dan提供有关如何解决此问题的线索。
答案 1 :(得分:0)
添加og:image:width和og:image:height作为额外的元标记为我解决了这个问题。用户nunsy_grey提到这对于某些用户来说并不能解决这个问题,所以值得一看alternative solution