16  /  25

Простой пример адаптации шаблона

Просмотров: 2016 (Статистика ведётся с 06.02.2017)

Рассмотрим простой пример адаптации на примере шаблона компонента Авторизация.

На странице Отладка получили ошибку Голосование компонента Против. Что делать?

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

Теперь результат работы компонента попадает в статическую страницу, в html файл.

Варианты разметки

Есть разные варианты разметки динамической зоны. Рассмотрим это на примерах трёх компонентов: Форма авторизации, Корзина и Баннер. Все эти компоненты должны быть включены в динамические зоны, так как первый и второй компоненты зависят от условий, которые создал пользователь, а третий - от условий ротации баннеров.

Анализируя код, отмечаем часть, где меняется содержимое выводимой информации. Мы видим, что если пользователь авторизован, то у него выводится меню - работает одна часть кода, а если не авторизован, то работает другая часть кода. Значит это и есть динамическая часть. Её и размечаем в соответствии с правилами подготовки компонента к работе в технологии.

Получается, что всё, что между createFrame()->begin и end() - это динамичная зона. При этом всё что до beginStub() - не пишется в кеш, а досылается после второго запроса, а то что после него - пишется в кеш, выдаётся пользователю и заменяется после второго запроса.

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

Примечание: При создании кеша на диске нужно обратить внимание на ограничения файловой системы. (30 тыс файлов в одной папке на UNIX.)
Этой проблемы можно избежать, если правильно настроить ЧПУ. Например, делать пути до товаров не /catalog/ID/, а /catalog/SECTION/ID/, тогда система сама разложит все файлы по папкам.

Более сложные варианты разметки: с использованием кеша браузера, с динамикой в отображении

При адаптации сайта можно использовать другие технические нюансы работы с технологией.

Примечание: Компоненты, которые, как правило, всегда должны быть в динамической зоне: авторизация, строка корзины, список просмотренных товаров, баннеры.

1
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии