Feeder


Назначение

Используется для трансляции RSS потоков с тематических ресурсов.

Ключи

feeds Строка, имя таблицы со справочником (файла в папке Data), из которого берется список RSS-лент для ретрансляции на собственном сайте. Расширение не указывается. Адрес RSS берется из поля url справочника.
refresh Секунды, периодичность обновления информации с каждого источника. Ключ refresh учитывается, если не для всех источников в списке RSS-лент указана частота обновления. Необязательный параметр, по умолчанию 3600 (1 час).
savetodb Строка, имя таблицы со справочником, в который будут сохраняться новости с внешнего RSS-потока. Если в dat-файле, где хранятся адреса RSS-лент нет поля table для каждого источника, то берется это поле.

Комментарии

Макроподстановка $Feeder[]$ может быть размещена в любом месте шаблона. В случае необходимости обновления информации с RSS, она будет отработана. В результате работы макроса будут добавлены последние новости с внешних RSS-источников.

Для управления сервисом через админзону необходимо подключить 2 редактора: первый - для файла со списком RSS-лент, второй - для автоматически добавленных новостей.

Пример сущности для редактирования фидов:

 <entity id="rssfeed" name="RSS feed">
  <field id="modified" type="locked" name="RSS обновлен"/>
  <field id="url" type="string" name="URL"/>
  <field id="refresh" type="string" name="Частота обновления (сек)"/>
  <field id="table" type="string" name="Таблица с результатами"/>
 </entity>

В dat-файл с внешними новостями сохраняются поля title, description, pubdate, link. Вывод новостей осуществляется макроподстановкой $News[]$. Для редактирования сохраненных новостей с внешних источников можно использовать следующую сущность:

<entity id="rss_news" name="RSS-новость">
  <field id="pubdate" type="date" sortas="literal" name="Дата"/>  
  <field id="description" type="html" sortas="literal" name="Текст"/> 
  <field id="title" type="text" sortas="literal" name="Название"/>
  <field id="link" type="string" sortas="literal" name="Ссылка"/>
 </entity>

Возможность автоматической публикации новости

Добавление новостей в справочник происходит автоматически при отработке макроподстановки $Feeder$. То есть новости могут добавляться при генерации страницы для индексирующего бота или посетителя. Каждая новость, добавленная в справочник, сразу же будет доступна для просмотра посетителей. Нужно только задать положение новостей макроподстановкой и создать соответствующий дизайн в файле news_design.xml.

Примеры

Пример №1
$Feeder[feeds: rss; refresh: 86400; savetodb: rssnews]$ - этот макрос будет срабатывать 1 раз в сутки (86400 секунд = 1 сутки) и добавлять новости в файл rssnews.dat. Адреса RSS-лент будут использоваться из rss.dat.