Шаблон сайта на практике - стили, скрипты, области
Шаблон сайта - это обвязка вокруг компонентов: шапка, подвал, подключение стилей и скриптов. Здесь собраны решения по работе с ним.
Что общего у этих задач
Шаблон делится на две части: до содержимого страницы и после. Между ними подставляется результат работы страницы. Отсюда следствие: код из шапки видит не всё, что доступно в подвале.
Шаблон живёт в каталоге проекта, а не в ядре. Правки внутри ядра теряются при обновлении. Свои файлы держат в шаблоне сайта. Так они переживают и обновление, и переезд.
Стили и скрипты подключаются через платформу, а не тегом в разметке. Платформа умеет объединять файлы и ставить метку версии. Она же не подключает один и тот же файл дважды, но только для зарегистрированного её средствами.
Правки шаблона живут в самом шаблоне, а не в файлах ядра. Собственный шаблон переживает обновление платформы, правка штатного - нет, и это то же правило, что и с компонентами.
Решения подтемы
- Стили и скрипты в шаблоне: подключение, порядок, кэш - средства платформы, порядок загрузки, метка версии.
- Включаемые области: файлы, области шаблона, правка менеджером - файлы областей, области раздела и передача блока вверх.
- Натяжка вёрстки на шаблон сайта: разрез, пути, компоненты - разрез шаблона, служебные вызовы, пути, компоненты.
- Баннеры и слайдеры: инфоблок или модуль рекламы - два способа вывода, кэш, показы и клики, композит.
- Карта с точками на сайте: данные, вывод, фильтр по городу - точки в инфоблоке, координаты, список и карта, города.
- Кнопки правки на витрине - иконки тулбара, область правки, меню элемента.
- Шаблон под раздел и по условию - правила показа, порядок, версия для печати.
- A/B-тест на витрине: варианты, доли, цели, результаты - два варианта, деление аудитории, кэш страниц, чтение итога.
- Шаблон сайта не применяется: разбор причин - правило показа, копия шаблона, кэш страниц, стили.
- Мобильная версия: адаптив, отдельный шаблон, кэш по устройству - выбор подхода, определение устройства, кэш и проверка.
- Путь запроса на витрине: пролог, компоненты, буфер, эпилог - порядок сборки, отложенные функции, кэш компонента, композит.
- Всплывающее окно на витрине: условие показа, частота, скорость - условие и задержка, запоминание отказа, композит, мобильные.
- Стили и скрипты не подключились: разбор причин - поздний вызов, объединение, путь, кэш, браузер.
- Свойства страницы: заголовок, метатеги, свои свойства - установка и чтение свойств, порядок вызовов, вывод в шаблоне.
- Своя кнопка на панели управления - кнопка верхней панели, её меню, права и место для кода.
Частые вопросы
Чем шаблон отличается от компонента?
Шаблон - обвязка всей страницы, компонент - блок внутри неё. У компонента свой шаблон, и он вкладывается в шаблон сайта.
Почему стили подключают средствами платформы?
Она собирает файлы в один, добавляет метку версии и не подключает дубли. Тег в разметке лишает страницу всего этого.
Где хранить свои правки шаблона?
В собственном шаблоне сайта. Правки штатных шаблонов возвращаются к исходному виду при обновлении.
Что такое включаемая область?
Кусок разметки, который правится из публичной части без доступа к коду. Удобен для телефонов, баннеров и коротких текстов.
Связанные темы
- Шаблоны сайта - устройство шаблонов
- Компоненты 2.0 - что вкладывается в шаблон
- Композитный сайт: устройство - шаблон и кэш страницы целиком
- Отправка формы через AJAX: проверка полей, защита, ответ с ошибками - скрипты страницы на практике
- Раздел Компоненты и шаблоны