blogdown中Twitter卡的相对图像路径

时间:2017-08-28 09:22:20

标签: r twitter r-markdown hugo blogdown

我正在尝试设置一个模板,用于在blogdown中生成Twitter卡。它将以下内容放在layouts/partials/twitter-card.html

<meta name="twitter:site" content="@myname">
<meta name="twitter:creator" content="@myname">
{{ if .IsPage }}
<meta name="twitter:description" content="{{ .Summary }}" />
<meta name="twitter:title" content="{{ .Title }}" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:image" content="{{ .Params.image }}" /> {{ else }}
<meta name="twitter:title" content="{{ .Site.Title }}" />
<meta name="twitter:description" content="{{ .Description }}" /> {{ end }}

以下layouts/partials/head.html

{{ partial "twitter-card" . }}

在给定的博文中 - foo.Rmd - 然后我把它放在YAML中:

image: "static/post/foo/figure-html/some_image.png"

当我让hugo生成一个帖子时,一切正常,我得到了:

<meta name="twitter:image" content="static/post/fixed-points_files/figure-html/some_image.png" /> 

然而,当我preview my Twitter card 时,图片没有显示出来。我认为我必须在YAML前端设置一个不同的路径,但我找不到路径格式应该是什么的文档,并且所有教程都在其示例中使用绝对URL。

2 个答案:

答案 0 :(得分:4)

Twitter卡不支持相对路径,您必须在图像标记中使用完全限定的HTTP(S)URL。这在troubleshooting帖子中有描述。

答案 1 :(得分:0)

我建议您在这种情况下使用绝对URL:

image: "/post/foo/figure-html/some_image.png"

请注意,您应删除目录名staticWhy?)。