Рекомендации интегратору 1с-Битрикс

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Тема статьи навеяна результатами наблюдений за методикой создания шаблонов различными разработчиками, чьи проекты попадали мне на поддержку. Порой разобраться в, казалось бы, такой простой сущности как шаблон очень и очень сложно. Исходя из этого я решил выделить несколько правил создания шаблонов для 1с-Битрикс, которые призваны облегчить жизнь при поддержке сайта. Однако я не претендую на абсолютную истину и все нижеописанные рекомендации складываются исключительно из личного опыта. 

Логика и представление.

Необходимость разделять процессы формирования и вывода результа нужно запомнить как аксиому. Архитектура системы Битрикс дает нам возможность изменять результаты работы компонента (если по каким-либо причинам не хочется его копировать) на этапе вывода — в файле result_modifier.php его шаблона. Следует помнить, что он кешируется наряду с template.php, т.е. допускает использование в разумных пределах дополнительных выборок через API системы. Разумеется, это справедливо только при включенном кешировании в настройках компонента.

Некоторые сложности использования дополнительных файлов шаблона компонента (script.js, result_modifier.php, component_epilog.php) создает сам Битрикс — во-первых, из административной части в 1 клик невозможно создать обычный файл, без подключенного хедера и футера. Во-вторых, неплохо бы добавить кнопки «Создать result_modifier.php» и «Создать component_epilog.php» из меню компонента.

Лишняя информация

В процессе интеграции мы чаще всего копируем стандартные шаблоны компонентов. Они, в свою очередь, почти всегда выводят максимум доступной информации. Если вывод какого-либо блока не подразумевается совсем, не стоит оставлять кусок кода, отвечающий за его показ.

Например, вывод дополнительных полей в news.list. Код шаблона компонента при невыбранных полях в настройках ничего не выводит, но по сути он там лишний! Если в ТЗ и макете нет упоминания об этих полях, код лучше удалить. При этом улучшится читабельность (чтобы понять насколько все может быть запутано, загляните в стандартный шаблон форума или блога) и снизится порог вникания в шаблон. В любом случае, при необходимости недостающие части легко добавить.

То же самое касается файлов. Из скопированного комплексного компонента можно и нужно удалять ненужные шаблоны компонентов, вместо них автоматически подключатся стандартные.

Система шаблонов в Битрикс допускает формулировку «а вдруг где-нибудь используется», поэтому лучше сразу удалить лишнее, чем копить как снежный ком ненужную информацию.

Проектирование шаблона

Если Вы делаете шаблон с «нуля», сразу продумывайте его структуру — где будут храниться изображения, шаблоны компонентов, включаемые файлы. Тут наиболее распространены 2 варианта:

1. Вся информация внутри шаблона. Этот вариант следует использовать когда точно известно, что шаблон сайта будет один или когда все они радикально отличаются друг от друга. Плюсом такого размещения являяется возможность скачать шаблон сайта целиком. К слову, для больших сайтов необходимость этого стремится к нулю в силу сильной интеграции с инфоблоками, форумами и другой информации из БД.

2. Шаблоны компонентов, картинки, скрипты, включаемые файлы вынесены за пределы шаблонов сайта. Такой вариант позволяет быстро изменить данные во всех шаблонах разом. Например, обновленный дизайн формы поиска или картинка логотипа гарантированно изменится на всем сайте.

Выполнение этих несложных правил позволяют без труда в короткие сроки возращаться к старым и забытым проектам. А главное, улучшение качества кода и интеграции в целом поднимут вашу ценность как разработчика!


Интересные статьи

Интересные статьи

Наступило время для завершения цикла статей о новом поколение SMB Check Point ( 1500 cерия). Мы надеемся, что для вас это был полезный опыт, вы продолжите быть с нами в блоге TS Solu...
Всем привет. Когда я искал информацию о журналировании (аудите событий) в Bitrix, на Хабре не было ни чего, в остальном рунете кое что было, но кто же там найдёт? Для пополнения базы знаний...
VUE.JS - это javascript фрэймворк, с версии 18.5 его добавили в ядро битрикса, поэтому можно его использовать из коробки.
Как-то у нас исторически сложилось, что Менеджеры сидят в Битрикс КП, а Разработчики в Jira. Менеджеры привыкли ставить и решать задачи через КП, Разработчики — через Джиру.
«Битрикс» — кошмар на костылях. Эта популярная характеристика системы среди разработчиков и продвиженцев ныне утратила свою актуальность.