2017-08-29 100 views
1

Blogger有一些布局数据标签,用于获取后期图片,如data:blog.postImageUrl(获取您的帖子中第一张图片的网址)和data:blog.postImageThumbnailUrl(这会生成您帖子中第一张图片的70×70像素缩略图,当分享到Facebook/Twitter /等时,它太小而无法使用)。哪个Blogger模板数据标签可以提取原始,未定义的帖子图片?

但是,发布帖子时,Blogger会自动使用您帖子中的第一张图片,以使用图片的特殊调整大小和/或裁剪版本生成自己的og:image元标记。重要的是,这个生成的图像将忽略任何自定义调整大小或裁剪,你可能已经通过修改s1600在其URL(explained here),并返回一个大尺寸图像,适合在社交媒体网站上共享后对图像做了。 (它甚至裁剪图像下降到1.91:1的比例,如在Facebook的“Best Practices”推荐。)

下面是一个例子:

原始图像URL(尺寸:600×450 :)
https://1.bp.blogspot.com/-rEPYMMK3vT0/WaVHqLSY7-I/AAAAAAAAA2A/CVMWqg18oU8HEIyo3r3CWrcO8Bm7O4uiwCLcBGAs/s1600/Montreal-Biodome-exterior.jpg

调整大小图像使用w180自定义尺寸的值(180像素的最大宽度):
https://1.bp.blogspot.com/-rEPYMMK3vT0/WaVHqLSY7-I/AAAAAAAAA2A/CVMWqg18oU8HEIyo3r3CWrcO8Bm7O4uiwCLcBGAs/w180/Montreal-Biodome-exterior.jpg

而这里的图像即博客奥波atically生成(裁剪成600×315): https://1.bp.blogspot.com/-rEPYMMK3vT0/WaVHqLSY7-I/AAAAAAAAA2A/CVMWqg18oU8HEIyo3r3CWrcO8Bm7O4uiwCLcBGAs/w1200-h630-p-k-no-nu/Montreal-Biodome-exterior.jpg

注意的自动生成的图像是如何使用的w1200-h630-p-k-no-nu其自身的大小值,完全无视我指定的w180


对我来说,问题是我也使用Twitter的“大图片汇总卡”。我尝试指定使用Blogger数据标记使用什么样的形象网址为twitter:image卡meta标签,就像这样:

<meta expr:content='data:blog.postImageThumbnailUrl' name='twitter:image'/> 
OR 
<meta expr:content='data:blog.postImageUrl' name='twitter:image'/> 

除了第一(postImageThumbnailUrl),在顶部提到的,是远在70太小×70像素,而第二个(data:blog.postImageUrl)获取自定义尺寸值为w180的图像URL,返回的图像只有180像素宽 - 就像在Twitter上共享没有用处(由此产生的Twitter卡使用空白占位符图像)。

我现在所做的是完全删除twitter:image标签,这迫使Twitter使用og:image标签,以便链接共享工作。不过,如果可能的话,我宁愿使用带有正确图像数据标签的twitter:image标签。

所以这是我的问题:有谁知道数据标签是什么,如果存在的话,来获取大,裁剪w1200-h630-p-k-no-nu版本后图像的博客为每个岗位?像这样:

<meta expr:content='data.{ETC}' name='twitter:image'/> 

其中,在使用上述图像后,将呈现为:

<meta content='https://1.bp.blogspot.com/-rEPYMMK3vT0/WaVHqLSY7-I/AAAAAAAAA2A/CVMWqg18oU8HEIyo3r3CWrcO8Bm7O4uiwCLcBGAs/w1200-h630-p-k-no-nu/Montreal-Biodome-exterior.jpg' name='twitter:image'/> 
+1

[如何在Blogger上显示更高分辨率的缩略图](https://stackoverflow.com/questions/45500573/how-to-display-higher-res-thumbnails-on-blogger) –

+0

感谢您的指点解决这个问题;我在搜索中没有看到它。今天晚些时候我会检查一下,当我有更多时间并测试它提供的解决方案时,看看它是否与我的问题相符。 – Walter

+0

@PrayagVerma我试了一下,它完美的工作(一旦我停止错字)。问题解决了;我已经用下面的工作代码发布了解决方案。谢谢。编辑:另外,我似乎无法解决这个问题的“重复问题”问题。我怎么做? – Walter

回答

0

我要感谢Prayag Verma为指向similar existing question这回答了这个一个。使用resizeImage operator,我实现了下面的代码,以我的模板:

<b:if cond='data:blog.postImageUrl'> 
    <meta expr:content='resizeImage(data:blog.postImageUrl, 1200, "40:21")' name='twitter:image'/> 
</b:if> 

其中,在这篇文章的来源,将呈现为:

<meta content='https://1.bp.blogspot.com/-rEPYMMK3vT0/WaVHqLSY7-I/AAAAAAAAA2A/CVMWqg18oU8HEIyo3r3CWrcO8Bm7O4uiwCLcBGAs/w1200-h630-p-k-no-nu/Montreal-Biodome-exterior.jpg' name='twitter:image'/> 

这正是我试图让。它通过Twitter验证器以优异的颜色。问题解决了。

相关问题