Facebook在第一次分享时不显示缩略图

时间:2016-10-27 08:20:34

标签: php facebook

在这个论坛中尝试了很多方法,但它只能工作80%。这意味着当我点击分享按钮时,它正常工作但有时当我分享帖子时它仍然无法获取缩略图

尝试在第一页设置og:image,但仍然无效。 mycode的:

<meta property="og:image" content="http://www.example.com/a.jpg">
<meta property="og:image:secure_url" content="http://www.example.com/a.jpg">
<meta property="og:image:width" content="640">
<meta property="og:image:height" content="442">

无论如何要解决它?感谢您的阅读

2 个答案:

答案 0 :(得分:3)

在头部添加此内容并更改您的应用ID,Image宽度和高度应与og:image:width and og:image:height相同

<meta property="fb:app_id" content=" your facebookAppId  " />
<meta property="og:title" content=" This is title of post " />
<meta property="og:url" content="http://www.example.com/a.jpg">
<meta property="og:image" content="http://www.example.com/a.jpg" />
<meta property="og:image:width" content="640" />
<meta property="og:image:height" content="442" />
<meta property="og:description" content=" This is description of post" />

此代码也可以帮助您

<div id="fb-root"></div>
                        <script src="https://connect.facebook.net/en_US/all.js"></script>


     <script>
/********* Code for deleting facebook cache ************/
                                FB.api(
                                        '/',
                                        'POST',
                                        {"scrape": "true", "id": "http://www.example.com/a.jpg"}, 
                                        function (response) {
                                        }
                                );
/********* Code for deleting facebook cache ************/

                            (function (d, s, id) {
                                var js, fjs = d.getElementsByTagName(s)[0];
                                if (d.getElementById(id))
                                    return;
                                js = d.createElement(s);
                                js.id = id;
                                js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7&appId=xxxxxxxxxxfacebookAppId";
                                fjs.parentNode.insertBefore(js, fjs);
                            }(document, 'script', 'facebook-jssdk'));</script>
                          <div class="fb-share-button" data-href="http://www.example.com/a.jpg" data-layout="button"></div>

答案 1 :(得分:0)

可能不是OG协议问题。

即使你的代码是正确的, facebook scrapper有时无法获得您的分享图片。

有两种方法可以解决它。 1.尝试使用facebook调试器让Crawler正确地获取您的图像。 https://developers.facebook.com/tools/debug/

  1. 更改共享图像的文件名。 据我所知,Facebook使用图片的网址保留共享图像的缓存一天。 因此,如果您更改图片的网址并让抓取工具重新绑定您的网址。