Создание RSS ленты в MODX Revolution

RSS-фид - это xml файл, который описывает последние новости, анонсы, посты блога и другую информацию для различных агрегаторов (сборщиков).

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

Хотя сами рсс-фиды и их читалки стали реже использоваться обычными пользователями, они могут влиять на положение сайта в поисковой выдаче.

Установите getResources, если он не установлен.

Создайте ресурс с произвольным именем, в моём случае - это "Новости и уроки MODX Revolution Webschool". Назначьте псевдоним (apas) ресурса feed. Скройте вывод данного ресурса от главного меню выставив галочку в Hide from menus чекбоксе. Назначьте пустой шаблон для данного ресурса и перейдите на вторую вкладку Настройки (Settings) ресурса.

Создание RSS-ленты в MODX Revolution

Выставите там тип содержимого RSS и снимите галочку в чекбоксе Использовать текстовый редактор (Richtext) и сохраните ресурс.

Создание RSS-ленты в MODX Revolution

 

Вставьте в поле Содержимое (Content) ресурса следующий код и сохраните:

Код
<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel> <title>[[*longtitle]]</title> <link>[[~[[*id]]? &scheme=`full`]]</link> <description>[[*introtext:cdata]]</description> <language>[[++cultureKey]]</language> <ttl>120</ttl> <atom:link href="[[~[[*id]]? &scheme=`full`]]" rel="self" type="application/rss+xml" /> [[!getResources? &tpl=`rssItem` &parents=`8,9` &depth=`5` &limit=`4` &includeContent=`1` &includeTVs=`1` &showHidden=`1` &hideContainers=`1` ]] </channel> </rss>

Итак данный код выводит нашу ленту последних постов. Осталось шаблонирующий чанк вывода отдельного элемента - rssItem
Код чанка rssItem

Код
<item> <title>[[+pagetitle:cdata]]</title> <link>[[++site_url]][[~[[+id]]]]</link> <description> [[+introtext:cdata]] </description> <pubDate>[[+publishedon:strtotime:date=`%a, %d %b %Y %R:%S`]] +0400</pubDate> <guid isPermaLink="false">[[++site_url]][[~[[+id]]]]</guid> <dc:creator> [[+createdby:userinfo=`username`]] </dc:creator> </item>

Kак видно в чанке я задал время +0400 (Московское время GMT +0400, для Украины GMT +0300). Валидируем наш рсс-фид по ссылке W3 feed валидатор. RSS-лента сайта готова!

Вставьте в head сайта следующий кусок кода:

Код
<link rel="alternate" type="application/rss+xml" title="RSS-лента [[++site_name]]" href="[[~id]]">

где id - идентификатор вашего ресурса - рсс-ленты

Для чего можно использовать RSS ленту?

RSS-ленту, можно использовать для создания Яндекс-виджетов, для оформления подписки через feedburner.google.com и для быстрой подписки через, например, такое расширением - RSS Subscription Extension (от Google) Если вы установите данное расширение и зайдёте на сайт, содержащий rss-ленту, то увидите следующую картину:

Создание RSS-ленты в MODX Revolution
3811