Автор статьи: Линар Биктимиров,
веб-программист компании SEO.RU
- Что такое RSS и зачем он нужен?
- RSS-лента на сайте: минусы
- Ручная генерация RSS-ленты
- Автоматическая генерация встроенными средствами CMS и плагинов
- Сторонние сервисы-парсеры сайта
- Заключение : какой способ генерации выбрать
Что такое RSS и зачем он нужен?
RSS — это семейство XML-форматов, предназначенных для описания лент новостей, анонсов статей, изменений в блогах и тому подобного. С помощью форматов RSS можно собирать, обрабатывать и представлять информацию для пользователя в удобном для него виде. Для этого используются специальные программы-агрегаторы, а также возможен импорт в сервисы для последующего отображения — например, Турбо-страницы Яндекса.
Чаще всего используются следующие версии (форматы) RSS:
- RSS 0.9x — с ее помощью публикуются структурно простая информация.
- RSS 2.x — применяется для публикации данных общего назначения.
- RSS 0.9 и 1.0 — основанные на стандартах RDF и XML форматы.
В недалеком прошлом RSS-каналами пользовались исключительно для сбора обновлений на сайтах — новостей, статей и так далее. Собирались они с помощью различных агрегаторов а-ля Google Reader, Feedly, Яндекс.Лента, My Yahoo. Многие из этих сервисов сейчас уже неактивны. Для многих это служит подтверждением того, что время RSS-лент как постоянного источника контента прошло. Сейчас эта функция прочно закрепилась за соцcетями, где к постам хотя бы можно оставлять комментарии (и выражать поддержку лайками) и не требуется какой-либо дополнительной настройки от владельцев источников новостей.
Тем не менее, RSS все еще остается значимым инструментом для современного веба, в том числе для тех же социальных сетей. Например, если у сайта есть группа или паблик «Вконтакте», можно подключить RSS-канал с сайта для публикации постов в группе. Также примером может быть публикация новостей на одном сайте из RSS-ленты другого. Типичный случай — создание подборок новостей на образовательных или региональных сайтах с выводом их в нужном месте страницы.
И, пожалуй, самое актуальное: RSS используется при поисковом продвижении сайта в работе с сервисами Яндекса — Дзен, Турбо-страницы.
Преимуществ у технологии Турбо много: можно организовать полноценный онлайн-магазин с корректным отображением цены, корзиной, чатом, кнопкой звонка и другими полезными интерактивными элементами. Функция Турбо-страниц подключается в сервисе Яндекс.Вебмастер: для этого нужно разрешить передачу контента по каналу RSS 2.0.
Что касается Дзена: при добавлении статей с сайта в Яндекс.Дзен можно избежать передачи ненужного контента и управлять внешним видом карточки статьи, а также увеличить количество заинтересованных посетителей за счет более точного указания тематики. Именно RSS сегодня служит получению динамически обновляемой информации с сайта в удобном формате.
Пример разметки RSS для Турбо-страниц
RSS-лента на сайте: минусы
Использование RSS для сайта также не лишено и минусов:
- Возможны фильтры от поисковых систем. Информация из RSS-каналов индексируется быстрее, чем из первоисточников. Это опасно тем, что поисковики могут воспринимать данные сайта как неуникальные, скопированные. Чтобы не допустить этого, в ленту нужно выкладывать аннотации к статьям и призывать пользователей переходить на полнотекстовый источник.
- Ваши материалы легко и быстро становятся добычей владельцев других ресурсов еще до того, как проиндексируются. Из-за этого ваш сайт может потерять позиции в выдаче. Во многом из-за этого большая часть владельцев сайтов стала отказываться от RSS-ленты.
Далее мы расскажем о способах, с помощью которых можно создать и настроить RSS-канал на собственном сайте. Однако нужно учитывать, что для каждого отдельного сервиса — будь то Яндекс.Дзен, Турбо-страницы или Яндекс.Новости, нужен свой, отдельный вариант канала, отличающийся от стандартного (например, формируемого средствами CMS) по структуре. Например, RSS-лента, подготовленная для сервиса Яндекс.Новости, отличается от ленты для Дзена набором обязательных атрибутов и другие требования к размеру иллюстраций.
Ручная генерация RSS-ленты
Разметку XML-файла для RSS-канала можно создать и обновлять его содержимое. Но сегодня такой подход вряд ли где-то можно встретить, разве что там, где информация обновляется очень редко.
Как правило, если RSS-канала необходим и используется, это означает, что информация часто обновляется и что ее много. Поэтому без автоматизации здесь не обойтись. Если у вас достаточно знаний в веб-программировании, то вы вполне можете написать код для генерации RSS-канала самостоятельно. Что для этого нужно?
- Подготовить шаблон файла с уже готовой разметкой.
- Обновлять его содержимое с помощью специального скрипта на PHP, который будет проверять, не было ли на сайте обновлений в момент запроса XML-файла соответствующими сервисами или согласно заданному расписанию на сервере. Если на сайте имеются обновления (например, изменился добавили новые товары или вышла новая статья), то скрипт обновит XML-файл. Новая информация будет доставлена по назначению, будь то другой скрипт или живой человек, листающий ленту новостей в своем любимом ридере.
Автоматическая генерация встроенными средствами CMS и плагинов
Готовые решения — самый простой и быстрый вариант для получения рабочего RSS-канала. Как правило, у распространенных CMS уже имеется встроенные опции для генерации RSS-ленты, а также есть набор дополнений (плагинов, модулей), предназначенных для работы с соответствующими сервисами. Рассмотрим имеющиеся решения для 3 самых популярных CMS по версии журнала CMS Magazine — WordPress, 1C-Битрикс, и Joomla.
WordPress
Встроенный RSS-канал
CMS WordPress по умолчанию создает несколько RSS-каналов сайта. Из них важны 2 главных (указаны относительные URL) — главной страницы и последних комментариев.
- Лента последних записей /feed/.
- Лента свежих комментариев /comments/feed/.
Настроить, что показывать в ленте сайта WordPress, можно в административной панели на вкладке «Написание»:
В пункте «В RSS-лентах отображать последние … элементов» нужно указать число, а в пункте «Для каждой статьи в RSS-ленте отображать» выбрать, что именно нужно выводить — анонс или полное содержание.
Плагины
- Яндекс.Дзен. Автоматически создаст на вашем сайте новую RSS-ленту для сервиса «Яндекс.Дзен» в полном соответствии с техническими требованиями Яндекса.
- Яндекс.Турбо. Работает аналогично предыдущему: создает новую RSS-ленту (или несколько лент) для сервиса «Яндекс.Турбо» по требованиям Яндекса.
- FeedWordPress. Это плагин для автонаполнения блога контентом из указанных RSS-лент. При этом статьи или ссылки публикуются на них как в автоматическом, так и в ручном режиме.
1C-Битрикс
Встроенный RSS-канал
Согласно документации Битрикса, есть 3 способа экспорта содержимого информационного блока в формате RSS. Это удобно, потому что в типовых случаях даже не нужно писать никакого дополнительного кода — достаточно включить в настройках экспорт RSS, и все, можно пользоваться. Рассмотрим один из способов.
Перед обращением к информационным блокам извне, разрешаем использование RSS в настройках информационного блока («Контент» > «Инфоблоки» > «Типы инфоблоков»):
Выбираем тип информационных блоков, для которых необходимо настроить RSS:
В форме редактирования параметров переходим на вкладку «Дополнительно»:
Выставляем флажок для параметра «Использовать экспорт в RSS», сохраняем параметры. Теперь мы можем обратиться к RSS информационного блока.
Делаем запрос таким образом:
http://sitename.com/bitrix/rss.php?ID=1&LANG=ru&TYPE=content&LIMIT=10
Для доступа к RSS-файлу необходимо выполнить запрос к скрипту /bitrix/rss.php с параметрами ID, LANG, TYPE и LIMIT.
Что обозначают эти параметры:
- ID — это ID инфоблока или символьный код инфоблока;
- LANG — сайт инфоблока;
- TYPE — тип инфоблока;
- LIMIT — количество элементов которые следует отображать.
Это быстрый и несложный способ, который может подойти в большинстве типовых случаев. Если понадобится переделать вывод RSS, то можно воспользоваться другими способами из документации 1С-Битрикс.
Модули
- Яндекс.Дзен RSS – PRO. Модуль выводит и позволяет управлять RSS-лентой для Яндекс.Дзен.
- «Модуль создания RSS-потоков в формате XML»: модуль для 1С-Битрикс. Данный модуль будет полезен в случаях, когда нужно генерировать какие-либо RSS-ленты в формате XML, чтобы представлять файлы в различные сервисы. Файлы, генерируемые данным модулем, соответствуют требованиям RSS 2.0 specification.
- «RSS PRO – Гибкость и простота»: модуль для 1С-Битрикс. Модуль выводит и позволяет гибко управлять RSS-лентой.
- Яндекс Турбо-страницы PRO. Модуль для выгрузки инфоблоков и статических страниц в формате RSS 2.0. для создания Турбо-страниц. Модуль имеет гибкие настройки, не требователен к хостингу, позволяет выгружать любое количество страниц.
Joomla!
Встроенный RSS-канал
В Joomla третьей версии RSS-лента уже сформирована по умолчанию. На нее нужно лишь указать ссылку в определенном месте вашего сайта. Но она выводится только по определенным категориям, показ которых вы можете настроить на главной странице сайта.
Для настройки в админ-панели пройдите по пути: Меню > Главное меню и откройте заголовок «Главная страница». В строке «Тип пункта меню» должно быть значение «Блог категории», а в строке «Выбор категории» нужно выбрать категорию или подкатегорию, которая будет транслироваться на главной странице и, соответственно, в ленте новостей. Если вы выбираете «Избранные материалы», то они и будут транслироваться в ленте новостей.
Модули
- ObRSS поможет создать неограниченное число RSS-каналов, которые по возможностям интерфейса не будут уступать решениям ведущих новостных порталов, например, CNN или BBC. Настраиваемый JSON-формат позволяет создать универсальный источник данных, который с легкостью интегрируется при разработке IOS- или Android-приложений. Кроме того, можно создать несколько параллельных лент, например, для мультиязычных сайтов, где контент публикуется синхронно на нескольких языках или, наоборот, собрать несколько RSS-каналов в один.
- RizVN FeedBurner представляет из себя простой модуль для реализации RSS-канала с базовыми функциями. Несмотря на всю простоту решения, сам интерфейс выполнен безупречно, включая форму подписки. Все управление и настройка отличается простотой и выполняется через интерфейс администратора.
Сторонние сервисы-парсеры сайта
Сторонние генераторы RSS-лент, такие, как feed43.com, newsloth.com или feedfry.com — это решение для тех, кто не хочет разбираться с генерацией RSS или просто не имеет на это достаточно времени. Многие из подобных сервисов могут преобразовывать существующие RSS-каналы, добавляя к ним возможности, способные заинтересовать и опытных разработчиков.
Среди генераторов RSS есть как платные, так и бесплатные варианты. Как правило, чтобы получить RSS-ленту, достаточно указать ссылку на исходный сайт и по желанию произвести дополнительные настройки: например, степень отслеживания — все изменения на странице или же только значительные; какие url отбирать в ленту. В некоторых случаях даже можно вручную указать блоки разметки на странице, из которых нужно брать информацию для вывода в итоговый RSS-канал. На выходе вы получите ссылку на RSS-канал своего сайта (вида https://feedfry.com/rss/11ead169f2619e828d148ce026dff2a1), которую можете передавать и вставлять, куда вам угодно.
Главная страница сервиса для онлайн-генерации RSS Feedfry
Заключение: какой способ генерации выбрать?
Чтобы выбрать тот или иной способ генерации RSS, нужно отталкиваться от следующих параметров:
- есть ли у сайта CMS;
- насколько часто обновляется информация;
- для чего вам нужен RSS-канал, а также навыков работы с сайтами.
Если нужен специфический RSS-канал (например, для Турбо-страниц), то распространенные CMS уже, как правило, имеют в своем арсенале готовые модули и плагины, достаточно их установить и настроить.
Если же CMS у сайта нет или информация обновляется крайне редко, то можно ограничиться ручной генерацией, или же написать скрипт для обновления XML-файла по запросу или расписанию.
Наконец, если вам просто нужен RSS-канал без особых требований и у вас мало навыков работы с кодом или админкой сайта, то можно посмотреть в сторону онлайн-генераторов RSS-лент.