Все для CMS » DataLife Engine » Хаки и модули » Вторая rss лента на DLE

Вторая rss лента на DLE

  • 1
Данный материал предоставлен сайтом All4Cms.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Вторая rss лента на DLE.
Вторая rss лента на DLE

Зачем нужна вторая rss лента? На этот вопрос нельзя ответить однозначно. У каждого владельца сайта на DLE могут быть разные причины. В моем же случае, заказ сайта был с такими требованиями: Первая лента – трансляция в Яндекс-Новости, а вторая для социальных сетей.

В админке Движка DLE на странице Настройка системы –> Настройка RSS экспорта новостей в графе Формат экспорта RSS потока можно выбрать три варианта:

Простой - выводит только текст новости без форматирования

Полный - выводит весь текст новости с сохранением форматирования и картинок

Яндекс новости - выводит текст в формате необходимом для интеграции сайта в систему Яндекс новости

Для интеграции в систему Яндекс новости единственный правильный вариант это последний, но в этом случае в ленте отсутствуют изображения, а в соц. сетях без картинки новости смотрятся очень скудно. Поэтому и понадобился второй — Полный rss-поток.

Итак, задача поставлена, как её решить?

1. Заходим на сайт по FTP в папку engine и находим файл rss.php – именно он отвечает за вывод ленты новостей на сайте.

2. Копируем и даем какое-то человеческое имя, например rss2.php. Не оригинально? Ну и что?

3. Затем изменяем под наши потребности. Для этого открываем файл в редакторе, и после include ENGINE_DIR . '/data/config.php'; на 27 строке добавляем

$config['rss_mtype'] = 0;

$config['rss_format'] = Формат экспорта;

где вместо Формат экспорта пишем цифру 0 или 1 или 2. Которым соответствуют:

0 — Простой выводи

1 — Полный - выводи

2 — Выводит Яндекс новости

4. Вроде бы всё, да не совсем. Если залить файл в таком виде, то возникает конфликт кеширования. Если закешировало основную ленту, то во второй будет выдавать ошибку. И наоборот, если закешировало вторую, то в первой будет выдавать ошибку. Поэтому ищем на 117 строке $config['allow_cache'] = true; и меняем на

$config['allow_cache'] = false;

5. Теперь всё. Сохраняем и заливам в туже папку engine.

Вторая rss-лента доступна по адресу http://Ваш-сайт.ru/engine/rss2.php. Конечно можно ещё отредактировать файл .htaccess для редиректа на более короткий адрес, соответствующий оригинальной ленте http://Ваш-сайт.ru/rss2.xml. Для этого в .htaccess нужно добавить запись:

RewriteRule ^rss2.xml$ engine/rss2.php [L]

Таким образом, на сайте DLE можно настроить три rss-потока соответствующие настройкам в самом движке:

0 — Простой выводи

1 — Полный - выводи

2 — Выводит Яндекс новости


  • Хаки и модули
  • 4-12-2013, 15:45
  • 3 969
Вернуться назад
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.