Создание RSS на MODX Revo
Создать RSS-ленту на MODX Revo достаточно просто, вам для этого потребуется компонент pdoResources. И ещё, если вы хотите выкидывать текст контента, понадобится компонент JEVIX
Создания шаблона для RSS
Приступим, для начала создадим шаблон, к примеру «RSS»
Добавим в него следующий код и подставим свои значения:
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>RUБЕЖ</title>
<link>[[++site_url]]news</link>
<description>Лента новостей Daruse.ru</description>
<language>ru</language>
[[!pdoResources?
&tpl=`tpl_rss`
&limit=`20`
&depth=`1`
&parents=`6,7,8,9`
&includeContent=`1`
]]
</channel>
</rss>
Где «&parents» ставим id тех ресурсов, которые будут попадать в нашу ленту.
Создания чанка для RSS
Шаблон создали, теперь создадим чанк «шаблон-одного элемента rss», назовём его «tpl_rss».
- <title>[[+pagetitle]]</title> <link>[[++site_url]][[~[[+id]]]]</link> <description>[[!Jevix? &input=`[[+content:limit=`1000`]]` &cfgAllowTags=`` &cfgSetAutoReplace=`[["<br>"],[""]]` ]]</description> <pubDate>[[+publishedon:date=`%a, %d %b %Y %H:%M:%S +0300`]]</pubDate>
В «title» выкидываем заголовок статьи, в «link» полный адрес ссылки на ресурс.
Поле «description» не обязательно, но если вы хотите вывести часть контента, то вам потребуется компонент JEVIX, который удалит html-теги.
Мы ему передаём в «&input», тот текст, который мы обрабатываем. «&cfgAllowTags=``» - допустимые html-теги, нам они не нужны, поэтому оставляем пустоту. Но это не срабатывает с одиночном тегом «<br>», который пишут иногда не правильно на сайте (вместо «<br/>»), поэтому используем «&cfgSetAutoReplace», который позволяет избавиться от этой проблемы. Мы заменяем все «<br>» на пустоту, тем самым эти «неправильные» теги пропадают.
В «pubDate» мы ставим дату публикации в правильном формате для rss, обратите внимание на часовой пояс «+0300».
Создание ресурса для RSS
И так, шаблон и чанк есть, теперь привяжем все это к нужному ресурсу.
Создаём ресурс, даём ему имя RSS, заходим во вкладку «Настройки» и меняем тип содержимого на XML.
После этого ваша лента будет по адресу http://вашсайт.ru/rss.xml.
E-mail:
Telegram:
Оставить комментарий