@Bitriks

Как принято организовывать структуру шаблона в Bitrix?

Возник вопрос по структуре сайта, как это принято в Bitrix. Есть мнение, что Bitrix имеет блочную структуру, следовательно, разметка в шаблоне должна быть проста:

header
    #WORK_AREA#
footer


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

Вопрос к структуре - как это правильнее организовать в Bitrix? Есть мнение, что, так как Bitrix основан на блоках, область #WORK_AREA# не должна быть на уровне шаблона жестко вынесена в , но, наоборот, вся структура должна генерироваться напрямую в файлах конкретных страниц, то есть, путем перетаскивания блоков в визуальном редакторе.

Я же имею другое мнение:

header
<div id = "leftblock">
    включаемая область
</div>
<div id = "content"
    #WORK_AREA#
</div>
footer


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

Структура только кажется жесткой. На деле, 99.9% сайтов имеют на всех своих страницах именно такую структуру, с небольшими отклонениями. Например, на некоторых страницах область контента может быть растянута на всю ширину - это делается на уровне css, и блок без новостей просто не будет занимать места. Точно так же - и с теми страницами, где должен присутствовать не левый, а правый блок для "модулей". Во всех исключительных случаях использовать отдельный шаблон для "выдающихся" страниц.

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

Но я почти не имею опыта в работе с системой Bitrix, и все эти мысли - от общей практики работы с другими системами и Framework'ами, поэтому вполне могу ошибаться.
  • Вопрос задан
  • 998 просмотров
Пригласить эксперта
Ответы на вопрос 2
agmegadeth
@agmegadeth
Веб-разработчик в дизайн студии
ну если сайдбар на всей области применения шаблона одинаков, то логичнее его оставить в шаблоне, а страницам отдавать только #WORK_AREA# без сайдбара. Но если он меняется от страницы к странице, его положение, стилизация или еще что, то удобнее генерить его на каждой странице. Хотя тут тоже от случая зависит.
Ответ написан
alexyarik
@alexyarik
Битрикс разработчик
Пока вы не обучитесь тут вам на пальцах никто не поможет. Ознакомьтесь с этими курсами, посмотрите то что относится к дизайну:
dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=41
Быстрый старт разработчика
https://dev.1c-bitrix.ru/learning/course/index.php...
Интеграция дизайна и настройка платформы
academy.1c-bitrix.ru/education/index.php?COURSE_ID...
-тут нужно будет подписаться на рассылку, но курс хороший.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы