Facebook为博客开放图形标签 - OG图像太小。我可以指定全尺寸图像而不是缩略图吗?

时间:2013-11-21 23:17:11

标签: html facebook templates facebook-graph-api blogger

Blogger不允许您在每个帖子中指定一个打开的图形图像。目前,模板中有一段代码将自动生成的缩略图指定为facebook的开放图形图像。问题是,缩略图图像是72 * 72,Facebook现在要求OG图像中的宽度至少为200px,或者默认为符合条件的页面上的第一个图像,即我的标题图像。

我的问题是:我可以在我的模板中修改此代码,以指定帖子中的完整尺寸图像而不是生成的缩略图吗?如果是这样,怎么样?如果你能提供帮助,非常感谢你!

        

1 个答案:

答案 0 :(得分:0)

我知道这是一个老问题(2年前),但我希望我的答案可以帮助其他人寻找解决方案。

目前,我们正在使用此代码在Facebook上分享链接时创建缩略图:

<meta expr:content='data:blog.postImageThumbnailUrl' property='og:image'/>

Blogspot将生成如下所示的HTML代码:

<meta property="og:image" content="http://1.bp.blogspot.com/-t5-HTAnnThU/Vicp0SSNPeI/AAAAAAAACZw/9lbrjwRY64A/s72-c/get-free-xyz-domain.png" />

是的,正如你所说,它是一张72x72的图像。但是你知道我们可以根据图片网址更改图片大小吗?

s72-c替换为w600-h315-c(600x315)时:

Thumbnail

现在,问题是如何更换新链接?我使用了以下技巧:

<meta expr:content='"http://junookyo.freevnn.com/?img=" + data:blog.postImageThumbnailUrl' property='og:image'/>

这是简单的PHP代码:

<?php

if (isset($_GET['img']) && filter_var($_GET['img'], FILTER_VALIDATE_URL)) {

    $img = $_GET['img'];

    if (strpos($img, '/s72-c/') !== FALSE) {

        $img = str_replace('/s72-c/', '/w600-h315-c/', $img);

        header("Location: {$img}");

    }

}

exit;

最终结果:

enter image description here

阅读my blog post了解详情。