Передаем обновления сайта через RSS
Представьте, что новости с сайта нужно показывать еще в другом месте: на корпоративном портале, в новостном агрегаторе или на сайте партнера. Копировать заголовки, описания и ссылки вручную неудобно.
Для таких задач используют RSS — ленту обновлений, из которой другой сервис может забирать заголовки, описания и ссылки на новые материалы. Чаще всего через RSS передают новости, статьи и другие материалы, которые регулярно появляются в инфоблоке.
Настройка RSS проходит в нескольких местах:
- тип инфоблоков разрешает саму возможность экспорта,
- инфоблок задает, какие данные попадут в ленту,
- компонент показывает ссылку на RSS в публичной части сайта.
Поэтому проверяем цепочку по порядку.
Включите RSS у типа инфоблоков
Перейдите в административный раздел и откройте Контент > Инфоблоки > Типы инфоблоков. Появится страница со всеми типами инфоблоков. Найдите тип, в котором хранятся нужные материалы, откройте меню действий и выберите Изменить.
В форме редактирования перейдите в раздел Дополнительно, включите Использовать экспорт в RSS и сохраните изменения. Без этой настройки вкладка RSS у инфоблоков не появится.
Настройте RSS у инфоблока
Вернитесь в Инфоблоки > Типы инфоблоков и откройте нужный тип. На странице со списком инфоблоков найдите тот, из которого нужно отдавать материалы, откройте меню действий и выберите Изменить. В форме инфоблока откройте вкладку RSS.
В блоке Параметры выгрузки в RSS выберите способ экспорта:
- Динамический экспорт. Другой сайт или сервис обращается к RSS-ленте, а Битрикс собирает ее в момент запроса. Включите Разрешен экспорт в RSS динамически. Поле Действительно (часов) задает срок актуальности RSS-ленты. Оставьте значение по умолчанию, если администратор не указал другое.
- Экспорт в файл. Битрикс заранее сохраняет ленту отдельным файлом на сайте. Включите Разрешен экспорт в RSS файл и укажите, сколько элементов выгружать и за какой период. Значение -1 снимает ограничение. Папку для файлов можно проверить в поле Путь к экспортируемым RSS файлам: Настройки > Настройки продукта > Настройки модулей > Информационные блоки. Опцию Разрешен экспорт в RSS файл в формате yandex включайте только для сервисов Яндекса, которым нужен этот формат.
Если не знаете, какой способ нужен на сайте, уточните у администратора.
Проверьте блок Привязка полей для выгрузки в RSS. Заполнять его не обязательно. Если шаблоны пустые, Битрикс подставит значения по умолчанию:
- title — название элемента,
- link — адрес детальной страницы,
- description — анонс, а если он не заполнен — детальный текст,
- pubDate — дату начала активности.
Если в ленте нужны значения, которые Битрикс не подставляет по умолчанию, укажите их шаблоном #КОД#. Код свойства можно посмотреть в настройках этого же инфоблока: откройте вкладку Свойства, найдите свойство по названию и скопируйте значение из колонки Код.
Для стандартного поля используйте его системное имя. Например, #DETAIL_TEXT# в строке description заменит анонс полным текстом материала. Нажмите Сохранить.
Подключите RSS в компоненте
В нашем примере материалы на странице выводит комплексный компонент Новости. Дальше покажем настройку на его примере.
Откройте в публичной части страницу, на которой выводятся материалы инфоблока. Включите Режим правки, наведите курсор на блок с материалами и нажмите на шестеренку.
В форме настройки найдите Настройки RSS и включите Разрешить RSS. Сохраните изменения.
Если группы Настройки RSS нет, включить RSS через этот компонент не получится. Уточните у администратора, как можно передать информацию.
Остальные поля менять не обязательно: Количество новостей для экспорта и Количество дней для экспорта ограничивают объем ленты, а опцию Экспортировать в диалект Яндекса включайте, только если ленту запрашивает сервис Яндекса.
Для отдельной страницы только с RSS-лентой предусмотрен компонент Контент > RSS > RSS новости (экспорт).
Проверьте ленту
Адрес ленты зависит от того, как настроен экспорт:
- Если ленту отдает компонент, откройте страницу со списком материалов. После включения опции Разрешить RSS на ней появляется ссылка RSS — ее вид и расположение зависят от шаблона.
- Если настроен экспорт в файл, Битрикс сохраняет RSS-ленту в папке сайта. Название папки можно посмотреть в поле Путь к экспортируемым RSS файлам. По умолчанию это папка /upload/. Например, файл инфоблока ID 2 откроется по адресу /upload/iblock_rss_2.xml. ID можно посмотреть в списке инфоблоков в колонке ID.
Посмотрите ленту в браузере. Проверьте несколько записей: заголовки и описания должны совпадать с материалами, а ссылки — вести на нужные страницы сайта. В браузере RSS-лента может выглядеть как служебный текст с тегами. Это не ошибка: лента предназначена прежде всего для программ, которые читают RSS.
Теперь разберемся, что нужно самому сайту, чтобы посетитель нашел публикацию и открыл правильную страницу.
Помогаем поиску открывать найденный материал
Посетитель ищет новость по названию. В результатах она есть, но ссылка ведет в общий раздел или на страницу с ошибкой.
Для материала инфоблока ссылка в результатах поиска собирается по правилам из настроек инфоблока. Сама страница на сайте открывается по правилам компонента. Если эти правила отличаются, поиск может вести по адресу, которого на сайте нет.
Сначала проверьте адреса в инфоблоке, затем сравните их с настройками компонента. Если правила отличаются, исправьте настройки инфоблока, сохраните изменения и проверьте ссылку из поиска.
Проверьте адреса в инфоблоке
В админке откройте Контент > Инфоблоки > Типы инфоблоков > Нужный тип инфоблока. Откройте меню действий и выберите Изменить.
На вкладке Инфоблок проверьте поля с адресами:
- URL страницы информационного блока,
- URL страницы детального просмотра,
- URL страницы раздела.
Поле страницы раздела появляется, если у типа инфоблока включена опция Использовать древовидный классификатор элементов по разделам.
Адреса собираются из обычного текста и параметров вида #ИМЯ#. Например, шаблон #SITE_DIR#/catalog/#SECTION_CODE#/#ELEMENT_CODE#/ означает: взять папку сайта, добавить папку /catalog/, затем символьный код раздела и символьный код товара.
Убедитесь, что включены опции Индексировать разделы для модуля поиска и Индексировать элементы для модуля поиска — без них разделы и материалы не участвуют в поиске.
Сравните адреса с настройками компонента
Откройте в публичной части страницу, которая выводит инфоблок. Включите Режим правки, наведите курсор на компонент и нажмите на шестеренку.
В настройках компонента откройте Управление адресами страниц. Названия полей зависят от компонента. Проверьте, из каких частей компонент собирает адреса:
- Каталог ЧПУ — общая папка, например /catalog/.
- Раздел и Детальная информация — продолжение адреса, например #SECTION_CODE#/#ELEMENT_CODE#/.
- вместе эти части дают адрес /catalog/#SECTION_CODE#/#ELEMENT_CODE#/.
Сравните получившиеся адреса с правилами в инфоблоке. В примере в поле URL страницы детального просмотра должен быть шаблон #SITE_DIR#/catalog/#SECTION_CODE#/#ELEMENT_CODE#/.
Если шаблоны отличаются, вернитесь в настройки инфоблока, укажите шаблоны из компонента и нажмите Сохранить.
Проверьте ссылку из поиска
После сохранения настроек проверьте результат как посетитель.
- Перейдите в публичную часть и найдите строку поиска, обычно она в шапке сайта.
- Поищите название товара или новости, а затем название раздела.
- Откройте ссылки из результатов.
Ссылка на материал должна открывать его детальную страницу, а ссылка на раздел — нужный раздел.
Передайте задачу администратору или разработчику: дальнейшая проверка может потребовать настройки сайта.
Ссылки в результатах поиска настроили. Следующая задача — выбрать основной адрес, если один и тот же материал открывается по нескольким ссылкам.
Выбираем основной адрес материала
Один товар можно привязать к нескольким разделам, например Новинки, Подарки и Аксессуары. Если в адресе товара указан раздел, один товар может открываться по нескольким ссылкам — по одной для каждого раздела. Например, ссылки /catalog/novinki/lampa/ и /catalog/podarki/lampa/ ведут на один товар. Для сайта это допустимо, но для поискового продвижения лучше указать основной адрес.
Дальше выберем основной раздел и проверим, как сайт передает основной адрес поисковым системам. Если материал уже открывается только по одному адресу, ничего менять не нужно.
Настройте инфоблок
Откройте Инфоблоки > Типы инфоблоков > Нужный тип инфоблока. В списке найдите нужный инфоблок, откройте меню действий и выберите Изменить.
На вкладке Инфоблок проверьте поле Канонический URL элемента. Укажите в поле шаблон основного адреса, а не ссылку на конкретный материал.
Например: https://адрес-сайта/catalog/#SECTION_CODE#/#ELEMENT_CODE#/.
Если поле пустое и вы не знаете, какой шаблон нужен, не заполняйте его наугад. Согласуйте адрес со специалистом по поисковому продвижению или администратором.
На вкладке Поля включите опцию Разрешить выбор основного раздела для привязки. Нажмите Сохранить.
Выберите основной раздел у материала
Откройте список материалов через Каталоги и выберите нужный раздел, например с товарами. Найдите нужный материал и откройте его на редактирование.
Проверьте, к каким разделам привязан материал. В форме товара это вкладка Разделы.
Если раздел один, выбирать основной не из чего. Для проверки нужен материал, который привязан минимум к двум разделам.
На вкладке Параметры в поле Основной раздел выберите раздел, по которому Битрикс будет строить основной адрес элемента.
Основной раздел можно выбрать только из тех разделов, к которым уже привязан материал. Если поля Основной раздел нет в форме, проверьте настройки формы или попросите администратора показать это поле. Нажмите Сохранить.
Включите канонический URL в компоненте
Перейдите в публичную часть на детальную страницу материала. Включите Режим правки, наведите курсор на область компонента и нажмите на шестеренку.
В настройках компонента включите Устанавливать канонический URL и сохраните изменения.
Проверьте результат
Откройте материал на сайте и проверьте исходный код страницы. В нем должна быть строка с rel="canonical" и главным адресом материала.
Каноническая ссылка не запрещает открывать другие адреса. Она сообщает поисковикам, какой адрес считать основным.
Если нужно закрыть второстепенные адреса
В настройках компонента могут быть дополнительные параметры:
- Использовать основной раздел для показа элемента — формирует ссылки через основной раздел, но не запрещает открыть другие адреса.
- Строгая проверка раздела для детального показа элемента — возвращает ошибку 404, если в адресе указан неподходящий раздел.
Включайте строгую проверку только после согласования с SEO-специалистом или разработчиком: старые ссылки и закладки могут перестать работать.
С адресами разобрались. В большом каталоге появляется другая задача: посетитель задает несколько условий сразу, и Битриксу нужно быстро найти подходящие товары.
Помогаем фильтру быстрее отбирать товары
В каталоге покупатель может отбирать товары по цвету, размеру, бренду или цене. В Битрикс такая панель называется умным фильтром.
Например, покупатель выбирает синий цвет и размер M. Фильтр показывает подходящие товары и обновляет остальные варианты: недоступные размеры исчезают или становятся неактивными.
В большом каталоге такой пересчет может замедлять страницу. Чтобы фильтр работал быстрее, Битрикс заранее собирает данные о свойствах товаров. Этот подготовленный список называется фасетным индексом.
Создайте фасетный индекс, если в торговом каталоге есть свойства, которые выводятся в умном фильтре.
Откройте каталог в публичной части и посмотрите на умный фильтр. В нем должно быть хотя бы одно свойство товара, например цвет, размер или бренд. Если фильтр пуст, сначала попросите администратора или разработчика настроить вывод свойств.
Перейдите в административный раздел и откройте Контент > Инфоблоки > Фасетные индексы. Появится таблица торговых каталогов и состояние их индексов. В строке выберите Создать.
Если нужного каталога нет в таблице или действие Создать недоступно, проверьте две вещи:
- инфоблок должен быть торговым каталогом,
- хотя бы одно его свойство — выводиться в умном фильтре.
В форме создания индекса проверьте, что в поле Информационный блок выбран нужный каталог. Поле Шаг задает длительность одного этапа обработки. Оставьте значение по умолчанию, если администратор не указал другое.
Нажмите Начать. Для большого каталога запускайте индексацию в период небольшой нагрузки на сайт.
После завершения проверьте состояние каталога. Значение Работает означает, что индекс создан и фильтр может его использовать.
При добавлении или изменении товара Битрикс обновляет индекс автоматически. Если индекс нужно пересоздать, появится уведомление.
Проверьте фильтр в публичной части: выбранные свойства должны отбирать подходящие товары, а недоступные варианты — исчезать или становиться неактивными в зависимости от шаблона.
Фильтр помогает выбрать товар по характеристикам. Но чтобы адреса самих товаров были понятными, понадобятся символьные коды.
Добавляем понятные слова в адреса старых материалов
В адресе материала может быть номер или понятный текст. Например, вместо catalog/125/ можно получить catalog/nastolnaya-lampa/. Такой фрагмент адреса называется символьным кодом.
Настройка нужна, если инфоблок создали давно и у части элементов или разделов нет символьных кодов. Битрикс может заполнить их сразу для нескольких материалов.
Генерация кода не меняет адрес, если компонент использует номер элемента. Но замена кода, который уже входит в адрес, может сломать старые ссылки. Перед массовым изменением действующих кодов проверьте меню, рассылки, закладки и внешние публикации.
Подготовьте инфоблок
Откройте Контент > Инфоблоки > Типы инфоблоков. Найдите нужный инфоблок, откройте меню действий и выберите Изменить.
На вкладке Поля найдите настройки поля Символьный код. Включите Транслитерировать из названия при добавлении элемента. Битрикс будет брать название материала и создавать код латиницей.
Отключите Использовать внешний сервис для перевода: с этой опцией массовое действие может не отображаться.
Если коды нужны разделам, повторите те же настройки на вкладке Поля разделов. Нажмите Сохранить.
Создайте коды для нескольких материалов
Откройте список элементов в вашем каталоге. Нажмите на шестеренку над таблицей, добавьте колонку Символьный код и примените изменения.
Найдите материалы, у которых колонка Символьный код не заполнена. Отметьте несколько материалов. На панели действий под списком выберите Изменить символьный код и нажмите Применить.
Проверьте результат
Проверьте колонку Символьный код: у выбранных материалов должны появиться значения. Посмотрите, какие коды Битрикс создал для похожих названий, пробелов и специальных символов.
Поиск, фильтр и понятные адреса помогают посетителю найти материал. Теперь добавим на страницу блоки для обратной связи и переходов: оценку, отзывы и публикации по той же теме.
Добавляем голосование, отзывы и материалы по теме
На странице новости можно показать оценку, отзывы и ссылки на похожие публикации. Эти блоки не меняют текст новости, но помогают посетителю отреагировать на материал или перейти к близкой теме.
Настройки находятся в комплексном компоненте Новости. Он выводит список новостей, детальную страницу и дополнительные блоки вокруг новости.
Для каждого блока нужна своя подготовка:
- для оценки обычно достаточно настроить параметры компонента,
- для отзывов нужен форум,
- для материалов по теме нужно создать темы и связать их с публикациями.
Сначала откройте настройки компонента. В публичной части перейдите в раздел новостей, включите Режим правки, наведите курсор на область компонента и нажмите на шестеренку.
Собираем оценки с помощью голосования
- В форме настройки найдите группу Настройки голосования.
- Включите Разрешить голосование. Задайте Максимальный балл и при необходимости подписи к оценкам.
- Сохраните настройки компонента.
Внешний вид шкалы и место вывода зависят от шаблона компонента.
После настройки откройте детальную страницу новости как посетитель и проверьте голосование.
Результаты можно посмотреть в административном разделе: Контент > Новости > Новости.
Если колонок нет, нажмите на шестеренку над таблицей и добавьте рейтинг в список полей.
Подключаем отзывы через форум
Отзывы работают через модуль Форум. Сначала создайте форум для отзывов и настройте права пользователей. Только после этого включайте отзывы в компоненте.
Если форума для отзывов еще нет, перейдите в административный раздел по пути Сервисы > Форумы > Список форумов и нажмите Добавить форум.
На вкладке Форум задайте название, например Отзывы, и отметьте сайт, на котором он будет работать. Остальные поля можно оставить без изменений.
На вкладке Настройки оставьте базовые параметры. Если писать смогут гости, оставьте включенной CAPTCHA. Загрузку файлов можно оставить выключенной, если отзывы нужны только текстовые.
На вкладке Доступ настройте, кто сможет писать отзывы.
Для проверки на демосайте дайте нужной группе право Ответ. На рабочем сайте не открывайте запись для всех без согласования. Если нужны гостевые отзывы, используйте CAPTCHA и дополнительную проверку. Сохраните форум.
Вернитесь к публичной странице новостей и снова откройте настройки компонента через шестеренку.
В группе Настройки отзывов включите Разрешить отзывы, а в поле ID форума для отзывов выберите созданный форум. Сохраните настройки.
Проверьте сценарий для гостя на странице новости. Возможность отправить отзыв зависит от прав форума, а не только от настройки компонента.
Связываем публикации общей темой
После новости можно показать блок Материалы по теме. В нем посетитель увидит другие публикации с такой же темой.
Например, две новости отмечены темой Доставка. Тогда каждая из них сможет показать другую в блоке Материалы по теме.
Битрикс не подбирает такие публикации сам. Сначала создайте темы, добавьте поле Тема к новостям и укажите в компоненте Новости, по какому полю искать совпадения.
В стандартном компоненте Новости блок Материалы по теме предусмотрен для шаблонов .default и web20. Если на сайте выбран другой или доработанный шаблон, настройка может сохраниться, но блок на странице не появится или появится ошибка вывода списка.
Подготовьте темы и поле для публикаций
Откройте Инфоблоки > Типы инфоблоков. Чтобы не менять настройки типа Новости, нажмите Добавить новый тип.
В поле Идентификатор укажите свободный идентификатор латинскими буквами, например rubrics. Включите Использовать древовидный классификатор элементов по разделам. В поле Название укажите Рубрики и сохраните тип.
Откройте Инфоблоки > Типы инфоблоков > Рубрики и нажмите Добавить инфоблок.
В форме укажите название Темы, выберите сайт и сохраните новый инфоблок.
Вернитесь к типу Новости и откройте основной инфоблок Новости.
На вкладке Свойства добавьте новое свойство Тема. В строке свойства заполните основные поля:
- Название — Тема
- Тип — Привязка к разделам
- Код — TOPIC
Откройте детальное редактирование. В настройках привязки выберите тип инфоблоков Рубрики и инфоблок Темы. После этого в публикации можно будет выбрать нужный раздел из этого инфоблока. Сохраните изменения.
Перейдите в Контент > Рубрики > Темы. Нажмите Добавить раздел и создайте по разделу для каждой темы: например Доставка, Оплата и Уход за товаром.
Эти разделы работают как метки для публикаций, а не как страницы с материалами. Поэтому элементы внутри них создавать не нужно.
Назначьте темы публикациям
Перейдите в список публикаций через Контент > Новости > Новости и откройте нужный элемент.
Найдите новое поле Тема, выберите подходящий раздел и сохраните материал.
Для проверки назначьте одну и ту же тему минимум двум публикациям. Если тема выбрана только у одной новости, блок не покажет связанные материалы.
Включите блок в компоненте и проверьте результат
Откройте публичную страницу новостей, включите Режим правки и через шестеренку перейдите к настройкам компонента.
В группе Настройка материалов по теме включите Выводить материалы по теме.
Код свойства — это техническое имя поля. Укажите код созданного выше свойства Тема — TOPIC. По нему компонент понимает, какие публикации относятся к одной теме. Затем выберите инфоблоки для связанных публикаций и сохраните настройки.
Теперь откройте детальную страницу одной из публикаций, которой назначена общая тема.
Если шаблон поддерживает блок Материалы по теме, под основным текстом появится ссылка на другую публикацию с той же темой.