Генерация полных URL на Eleventy и Netlify - PullRequest
0 голосов
/ 19 февраля 2020

Я работаю над блогом и веб-сайтом Elevent . Функции совместного использования в социальных сетях, такие как Facebook OpenGraph и Twitter-карты , должны иметь полные абсолютные URL-адреса к таким ресурсам, как изображения. Twitter особенно отвергает любые относительные URL-адреса к изображениям.

Предлагает ли Eleventy собственный способ создания полных URL-адресов? Поскольку Eleventy является статичным c сайтом, созданным, в отличие от размещенного веб-сервера, он не может получить эту информацию из заголовков HTTP, как другие системы. Сайт размещается на Netlify, если Netlify предоставляет какие-либо инструменты для генерации URL-адресов из JS. У меня уже есть некоторые задачи по созданию изображений с измененным размером с помощью Gulp.

В настоящее время я просто использую свою собственную конфигурацию на месте, например, для генерации URL-адресов в шаблонах Nunjucks:

{# page_twitter_image is a site root relative path to the image #}
{% if page_twitter_image %}
<meta name="twitter:image" content="{{ site_base_url }}{{ page_twitter_image }}" />
{% endif %}

Подробнее о создании моего URL здесь .

Ответы [ 2 ]

1 голос
/ 29 февраля 2020

Официальный RSS-плагин включает в себя очень простой фильтр Nunjuck absoluteUrl. Если вы добавите этот плагин, ваш код может выглядеть следующим образом:

<meta name="twitter:image" content="{{ page_twitter_image | url | absoluteUrl(site_base_url) }}" />

Не так уж и много улучшений, но я думаю, что он более перспективен.

1 голос
/ 25 февраля 2020

Насколько я знаю (на основании документов: https://www.11ty.dev/docs/data/#page -variable-contents ) ответ - нет. Я думаю, что ваше решение имеет смысл, хотя.

Я подаю ER, чтобы получить доступ к этому. Я думаю, что это должно быть доступно в данных страницы и, возможно, через шорткоды / фильтры.

...