Разработчикам · 2 МИН ЧТЕНИЯ

Шаблоны инфоблоков и ассеты темы

Настройте представление списка, материала и виджетов без отдельного движка.

Перед началом

Сначала определите системное имя инфоблока и текущую тему. Action подготавливает данные, а шаблон отвечает за разметку.

Порядок действий

  1. В теме создайте файлы components/iblock/{sys_name}_list.php и {sys_name}_item.php. Для документации промосайта это docs_list.php и docs_item.php.
  2. Используйте переданные action значения: инфоблок, категорию, записи, поля, параметры отображения и пагинацию. Не выполняйте запросы к БД внутри разметки.
  3. Экранируйте строки и URL через безопасный formatter. Доверенный редакционный HTML выводите только в предусмотренном месте основного текста.
  4. Фрагменты подключайте через Page::includeTemplateFile() и методы Template с относительными путями. Имена шаблонов из запроса требуют явного whitelist.
  5. Зарегистрируйте исходные CSS и JavaScript через Page. Новый JavaScript пишите на Vanilla JS в namespace daacms.
  6. Проверьте список, статью, пустые данные и мобильную ширину с включённым контролем PHP warnings.
Обратите внимание. Не создавайте отдельный runtime для чтения инфоблоков. Настройки публикации, сортировки и прав должны продолжать работать через штатный компонент.

Проверьте результат

Запись редактируется в админке, отображается новой темой и сохраняет работу метаданных, пагинации и системы ассетов.

Скриншот инструкции