Под новостным разделом в данном случае понимается:
- любой динамический раздел данных с детальными страницами и без них (новости, достопримечательности, каталоги компаний и т.д.)
- каталог товаров, если он реализован на редакциях Старт и Стандарт (где нет интернет-магазина)
1. Требования к разработке:
1.1. Новостной раздел содержит ссылку на детальную страницу
В этом случае новостной раздел должен состоять из набора страниц:
- Страница списка разделов (используется редко)
- Страница списка элементов
- Детальная страница элемента
1.1.1 Настройка инфоблока:
Обязательно настраиваем ЧПУ адреса
В настройке детальной страницы может использоваться и #SECTON_CODE_PATH# если предполагается использования вложенных подразделов в разделы.
В настройках SEO блока необходимо задать шаблоны с использованием переменных. Текст может быть любой, важно обеспечить работоспособность шаблонов!
В блоке Поля необходимо произвести следующие настройки:
Картинка анонса
Обязательно создаем картинку анонса из детальной, уменьшаем копию. Размер копии задаем исходя из верстки, либо берем с небольшим запасом.
Детальная картинка
Обязательно уменьшаем загружаемую картинку, чтобы сэкономить место на сервере и ускорить работу сайта. Обычно достаточно 2000*2000 (если это не оговорено отдельно). По требованию клиента может наноситься авторский знак (ватермарк) на картинку. Обычно он размещается снизу справа
Символьный код
Символьный код используется в ЧПУ ссылках, поэтому настройка блока крайне важна!
Обязательно нужно проверять код на уникальность, чтобы обеспечить корректную работу ЧПУ ссылок, также необходимо транслитерировать код из названия элемента, все должно быть в нижнем регистре и указан дефис вместо пробела и прочих символов (по умолчанию в блоке стоит нижнее подчеркивание, что с точки зрения SEO не совсем корректно).
Аналогичные настройки делаем в блоке Поля разделов.
В блок Свойства заводим необходимые нам свойства для работы инфоблока. Здесь важно задать код. Код должен быть в верхнем регистре, оптимально в формате: ИБ_СВОЙСТВО. Например, свойство Имя пользователя инфоблока Объявления может называться: ADS_NAME
В блоке Доступ ставим право Чтения для всех пользователей (если раздел открытый для всех и доступен на сайте без авторизации).
В блоке Подписи задаем названия понятные пользователю и контент-менеджеру
На этом настройка инфоблока завершена.
Настройка интерфейса контент-менеджера для работы с инфоблоком
Переходим в нужный нам ИБ в разделе Контент и настраиваем списки разделов и элементов, а также страницы редактирования элементов таким образом, чтобы:
- Поля шли в логической последовательности (условно, не было детального текста перед картинкой анонса)
- Все неиспользуемые поля были скрыты
Далее необходимо завести несколько тестовых разделов и элементов
Заполнить их необходимо в соответствии с требованиями настроек. Крайне желательно, чтобы контент был максимально приближен к реальному. Здесь лучше запросить помощь у проджект-менеджера.
1.1.2 Требования к программной реализации:
- Для вывода данных используем комплексный компонент news, который сразу формирует все необходимые страницы и связи между ними. Настраиваем его в соответствии с настройками ИБ.
Критические настройки следующие:- В управлении адресами страниц должны настройки совпадать с ИБ и включена поддержка ЧПУ
- Должно быть включено авто + управляемое кэширование с учетом прав доступа, а кэширование по фильтру должно быть отключено
- В допнастройках обязательно устанавливаем заголовок и формируем хлебные крошки из разделов и элементов
- В настройках 404 ошибки обязательно устанавливаем статус 404
- В управлении адресами страниц должны настройки совпадать с ИБ и включена поддержка ЧПУ
- На странице списка элементов если возникает ситуация с изображениями, когда они не подходят по формату, то подстраиваем их с помощью функции ResizeImageGet до нужных размеров. Вот пример подобной ситуации, которая требует исправления:
- Если у элемента отсутствует изображение, а оно нужно в верстке, то должна использоваться заглушка (ее нужно согласовать с проджектом)
- На страницах разделов, подразделов и элементов корректно работают SEO настройки из инфоблока
- На детальной странице хлебные крошки построены корректно и имеют вид: ... / раздел / подраздел / элемент (элемент не является ссылкой)
1.2. Новостной раздел не содержит ссылки на детальную страницу
В этом случае нам не нужно настраивать ЧПУ и SEO параметры, а также заморачиваться на детальные страницы и картинки. Работаем только с данными по анонсу и свойствами.
Для вывода информации на страницу используем компонент news:list и в нем отключаем SEO блоки и хлебные крошки (это будет тянуться из настроек раздела сайта)
2. Тестирование функционала
Тестирование работы должно проводиться следующим образом:
- Проверка настройки инфоблока включая целесообразность использования свойств (разработчик должен объяснить зачем используется то или иное свойство)
- Проверка настройки интерфейса контент менеджера в админке (он должен быть понятным и не вызывать лишних вопросов)
- Проверка работы страницы списка элементов, подразделов и т.д. (всё ли работает в соответствии с задачей, отдается ли 404 ошибка, работают ли СЕО настройки)
- Проверка детальной страницы (всё ли работает в соответствии с задачей, отдается ли 404 ошибка, работают ли СЕО настройки, на странице не должно быть "версточных" неактивных элементов, все данные должны корректно подтягиваться, их изменение в админке приводит к изменению на странице)
- Проверка страницы списка элементов, разделов и детальной страницы для авторизованного (админа, контент-менеджера, пользовательских групп) и обязательно для неавторизованного пользователя
- Проверка организации кода. В случае необходимости запрашивается код ревью у другого разработчика (по согласованию с проджектом и в случае возникновения спорных ситуаций)
Больше полезных материалов в нашем Telegram канале. Вступайте и будем на связи! https://t.me/bf_conversion