dimayakovlev.ru


Шаблон Twig для Grav CMS, формирующий RSS-канал раздела

Использование RSS-канала позволяет публиковать в сжатом виде размещённую на веб-сайте информацию, обеспечивая удобный и своевременный доступ к ней пользователям, использующим специальное программное обеспечения для чтения RSS-лент, включая онлайн сервисы.

Приведённый код шаблона Twig позволяет формировать RSS-ленту для раздела веб-сайта, работающего под управлением системы управления контентом Grav CMS. При этом, формируемая RSS-лента, содержит только обязательные RSS-теги. Для повышения функциональности RSS-ленты, набор используемых тегов, должен быть расширен за счёт дополнительных тегов в соответствие со спецификацией RSS 2.0.

Так как формат RSS (Rich Site Summary) относится к семейству XML-форматов, использование шаблона Twig для формирования RSS-ленты аналогично рассмотренному ранее примеру. При этом в качестве расширения в адресе страницы могут использоваться .xml (имя файла шаблона page.xml.twig) или .rss (имя файла шаблона page.rss.twig).


<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
  <title>{{ page.title() }} RSS</title>
  <link>{{ page.url(true) }}</link>
<description>{{ page.header.metadata.description }}</description>
  {% for item in page.collection %}
  <item>
    <title>{{ item.title() }}</title>
    <link>{{ item.url(true) }}</link>
<description>{{ item.header.metadata.description }}</description>
  </item>
  {% endfor %}
</channel>
</rss>