продолжаем публикацию серии полезных советов, облегчающих понимание некоторый действий и особенностей скрипта. Последнее время к нам часто поступают вопросы с просьбой сделать модификацию скрипта, чтобы можно было использовать различные шаблоны для разных разделов сайта. Например главная страница с новостями должна иметь одну структуру верстки, а например страница обратной связи совсем другую. При этом мотивируя нам что изменять шаблоны можно в админпанели только для категорий новостей сайта. Но на самом деле все это можно реализовать стандартными средствами, о чем и пойдет данная небольшая статья.
Итак первое что нам необходимо это обратится к документации скрипта, которая гласит что шаблон main.tpl поддерживает следующие теги:
[aviable=раздел] текст [/aviable] который выводит текст заключенный в теги если просматривается указанный раздел сайта
также у этого тега есть противоположность
[not-aviable=раздел] текст [/not-aviable] который выводит текст заключенный в теги если просматривается любой раздел кроме указанного
Возьмем за основу пример задачи: сделать так, чтобы сайт использовал одно оформление шаблона, а обратная связь на сайте использовала другой. Исходя из этого нам необходимо открыть шаблон main.tpl и указать слеующее:
[aviable=feedback] тут весь текст шаблона, который будет показываться при просмотре обратной связи [/aviable]
[not-aviable=feedback] тут весь текст шаблона, который будет показываться везде кроме обратной связи [/not-aviable]
[not-aviable=feedback] тут весь текст шаблона, который будет показываться везде кроме обратной связи [/not-aviable]
Но у этого есть один большой минус, ваш основной файл шаблона main.tpl будет слишком большого размера, т.к. по сути будет содержать два разных оформления, и тут мы опять обращаемся к документации и скрипта и узнаем о существовании прекрасного тега: {include file="my_block.tpl"}, который подключает указанный файл my_block.tpl в шаблон.
Исходя из всего выше изложенного финальная реализация выглядит следующим образом:
Содержание main.tpl:
[aviable=feedback] {include file="feedback_main.tpl"} [/aviable]
[not-aviable=feedback] {include file="all_main.tpl"} [/not-aviable]
[not-aviable=feedback] {include file="all_main.tpl"} [/not-aviable]
В файле шаблона feedback_main.tpl мы делаем оформление обратной связи, а в файле all_main.tpl мы делаем оформление всего остального сайта. Вот собственно и все, легко и достачно просто реализовать, не нужно производить никаких модификаций скрипта. Также вы можете оформить оформление любого раздела, можете комбинировать несколько разделов и т.д. Чаще и внимательнее прочитывайте документацию к скрипту, там достаточно много полезного можно подчеркнуть для себя.
С уважением,
SoftNews Media Group
Комментарии