我正在尝试使用Twitter的图库卡来展示Tumblr的照片集。这是代码的相关部分,所有内容都可以通过Twitter验证:
{block:Photoset}
<meta name="twitter:card" content="gallery">
{block:Photos}<meta name="twitter:image" content="{PhotoURL-500}"/>{/block:Photos}
{block:Photos}<meta name="twitter:image0" content="{PhotoURL-500}"/>{/block:Photos}
{block:Photos}<meta name="twitter:image1" content="{PhotoURL-500}"/>{/block:Photos}
{block:Photos}<meta name="twitter:image2" content="{PhotoURL-500}"/>{/block:Photos}
{block:Photos}<meta name="twitter:image3" content="{PhotoURL-500}"/>{/block:Photos}
{block:Caption}<meta name="twitter:title" content="Photo Gallery"/>{/block:Caption}
{/block:Photoset}
但是,如果你仔细观察,你可能会看到我的问题。我无法弄清楚如何为每个图像获取唯一的URL。 {PhotoURL-500}总是只返回相同的图像。根据我对Tumblr文档的显然不正确的阅读(http://www.tumblr.com/docs/en/custom_themes#photoset-posts),{block:Photoset}中的{block:Photos}似乎应该循环显示。
我错过了什么?
另外 - 是的,我知道我已经对twitter的内容进行了硬编码:标题。
答案 0 :(得分:0)
现在不可能。
问题在于{block:Photos}
将遍历每张照片并在该标记内呈现标记,但您无法手动控制该照片以精确定位单张照片。
您的代码正在做的是每张照片都会呈现4次Twitter标记;如果Twitter接受多个图像而不要像OpenGraph那样明确声明image0
,image1
等,那么它就不会成为问题(OpenGraph你想要的是什么) ,只需在照片块中放置一个元标记,然后为每张照片渲染它,但是看看Twitter对开发人员越来越不友好,对于他们这方面的修复几乎没有希望。