Я уже писал про настройку вывода RSS в MODx при помощи Ditto. И вроде как оно даже работает. Но я столкнулся с одной проблемой. Ditto выводил в RSS только начало поста, обрезая все остальное. А я хотел отдавать в пост все содержимое. Точнее, почти все.
В общем, сейчас я расскажу как я заставил Ditto отдавать сложное содержимое в RSS.
Напомню что вызов дитто выглядит примерно так:
[[Ditto? &parents=`1` &format=`rss` &display=`5` &total=`all` &depth=`3` ]]
В Ditto заложена поддержка форматов вывода. Atom, RSS, xml и JSON. Мне стало интересно как он это делает и как настроить что будет выводиться.
Не долго думая, я полез в папку сниппета "/public_html/assets/snippets/ditto" и нашел папку formats. А в ней ктобывыдумали? Файл rss.format.inc.php.
Открыв его, я обнаружил шаблоны для вывода RSS.
Посты в моем блоге состоят из трех частей. Короткая статья, статья под катом и, возможно, флеш-баннер между ними. В RSS я хотел выводить все, кроме флеш-баннера.
Вот как я исправил код:
<item>
<title>[+rss_pagetitle+]</title>
<link>[(site_url)][~[+id+]~]</link>
<description><![CDATA[ [+tvshortstate+][+content+] ]]></description>
<pubDate>[+rss_date+]</pubDate>
<guid isPermaLink="false">[(site_url)][~[+id+]~]</guid>
<dc:creator>[+rss_author+]</dc:creator>
[+tagLinks+]
</item>
Теперь моя RSS выглядит так, как я хочу. Вообще, может и можно как-то настроить это через параметры, передаваемые Ditto, но я не нашел как. Да и зачем? Все оказалось не так уж сложно, да?
Касательно работы моего блога. Я вот писал про выбор хостинга и про то, какой я выбрал. Так вот, я его потестировал. За такое маленькое время жизни хостинг успел упасть несколько раз. Буквально вот сейчас я пишу эту статью, а он рисует мне 504 и ошибки ожидания и отпинывает ftp. Вот такой вот хороший хостинг. А если хотите узнать про хостинг больше — добро пожаловать на fosting.ru.
Запомните, дети, хостинг hostingru.net - плохой хостинг. У него постоянно падает скорость, иногда отваливается по таймауту, сегодня весь рабочий день он недоступен так же, как его сапорт. Не ходите, дети в хостингру.нет.