Помощь » База знаний » Shop-Script » Настройка дизайна »
Редактор дизайна Shop-Script позволяет использовать условия Smarty для индивидуальной настройки дизайна на разных страницах витрины интернет-магазина. Например, вам может понадобиться отображать рекламный баннер только на страницах с информацией о товарах, а полезные советы для покупателей показывать на всех страницах, кроме главной. Для использования условий Smarty необходимо воспользоваться ссылкой «Редактировать HTML-код» в окне редактора.
Витрина интернет-магазина Shop-Script состоит из страниц следующих видов (в скобках указаны параметры адресов каждого вида страниц):
Для определения типа страницы в вашем условии должна выполняться проверка соответствующего значения в массиве $smarty.get, как показано ниже:
{if $smarty.get.ukey eq 'pricelist'}
текст или HTML-код
{else}
альтернативный текст или HTML-код — необязательная часть условия выделена серым цветом
{/if}Этот код необходимо добавить в требуемую часть окна редактора дизайна в режиме редактирования HTML-кода.
Как работает этот пример:
Чтобы составить условие «от обратного», т.е. «если текущая страница не является прайс-листом», вместо оператора eq следует использовать оператор ne, например:
{if $smarty.get.ukey ne 'pricelist'}
текст или HTML-код
{else}
альтернативный текст или HTML-код — необязательная часть условия выделена серым цветом
{/if}Как работает этот пример:
Совет: во второй строке условия можно указывать не только собственный HTML-код или текст, но также фрагменты оригинального кода, уже имеющегося в окне редактора дизайна. Это удобно для настройки индивидуального отображения стандартных блоков дизайна, например, главного меню, списка заголовков новостей или блока переключения языков.
Совет: добавление надписи на витрину интернет-магазина с переводом на другие языки описано в отдельной статье.
Ниже приведены несколько примеров условий Smarty, руководствуясь которыми вы сможете составить свои собственные.
{if $smarty.get.productID ne ''}Примечание: это условие можно расшифровать как «если значение productID существует и данная страница является страницей товара с любым значением productID».
{if $smarty.get.productID eq 123}{if $smarty.get.categoryID ne ''}{if $smarty.get.ukey eq 'register' or $smarty.get.ukey eq 'auth'}Примечание: сочетать несколько условий можно с помощью оператора or, который означает, что необходимо соблюдение либо одного, либо обоих указанных условий.
{if $smarty.get.ukey eq 'auxpage_about'}
Совет: более подробную информацию об использовании синтаксиса Smarty вы найдете в справочнике по адресу http://www.smarty.net/manual/ru/.