Относительные пути к изображениям для карт Twitter в blogdown
Я пытаюсь настроить шаблон для создания карт Twitter в blogdown
, Это положило следующее в 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"
Когда я позволяю Хьюго создать сообщение, все работает нормально, и я получаю:
<meta name="twitter:image" content="static/post/fixed-points_files/figure-html/some_image.png" />
Однако, когда я предварительно просматриваю свою карточку в Твиттере, картинка не появляется. Я предполагаю, что мне пришлось бы установить другой путь во фронтальной части YAML, но я не могу найти никакой документации о том, каким должен быть формат пути, и все учебники используют абсолютные URL в своих примерах.
2 ответа
Карты Twitter не поддерживают относительные пути, и вы должны использовать полный URL-адрес HTTP(S) в теге изображения. Это описано в сообщении об устранении неполадок.
Я рекомендую вам использовать абсолютный URL в этом случае:
image: "/post/foo/figure-html/some_image.png"
Обратите внимание, вы должны удалить имя каталога static
( Почему?).