我想通过Facebook状态分享指向网站的链接:http://www.pledgehub.com/d/2/test-fundraiser/
但是,Facebook open graph linter表示html中引用的图像:
<meta property="og:image:url" content="http://pledgehub-1.s3.amazonaws.com/icon_4060.png">
是有效的,将链接粘贴到状态更新对话框中不显示图像预览,即使通过linter运行链接应该使Facebook端的任何缓存图像值无效。此时此刻持续了> 24小时,我从未获得要显示的图片。
Edit1 :兔子洞越来越深......
我可以破解sharer.php网址来显示图像:
https://www.facebook.com/sharer/sharer.php?s=100&p[url]=http://www.pledgehub.com/d/2/test-fundraiser/?s=fb&p[images][0]=http://pledgehub-1.s3.amazonaws.com/icon_4060.png&p[title]=Test%20Fundraiser&p[url]=http://pledgehub.com/d/2/test-fundraiser/&p[summary]=Test%20Organization%20is%20raising%20$8000%20in%20Test%20Fundraiser.%20Help%20them%20reach%20their%20goal.
但是当点击Share Link时,图像会消失。
Edit2 :在AWS端可以消除问题;可以使用http和https网址与预览共享裸图像。
答案 0 :(得分:1)
嗯,这有点滑稽 - Open Graph docs说og:image:url
与og:image
相同,但Facebook并没有这样对待它。
如果您将第一个<meta>
标记更改为此标记,那么它适用于我:
<meta property="og:image" content="http://pledgehub-1.s3.amazonaws.com/icon_4060.png">
当我发布链接时,预览看起来像这样:
图像非常大 - 也许你不希望它像这样。如果您将图像调整到大约200x200,它看起来更正常:
您也可以使用og:image:width
和og:image:height
属性来实现这一目标,但我没有尝试过。
希望有所帮助!