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

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

+1
Вторая 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'] = [b]Формат экспорта[/b];

где вместо Формат экспорта пишем цифру 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 — Выводит Яндекс новости
Внимание!
Для просмотра скрытого текста, Вам необходимо Войти или Зарегистрироваться.
  • DLE хаки
  • 4-12-2013, 15:45
  • 1523
Вернуться назад
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.