[1/2 Решено] определить условие {if} для вывода собственного шаблона для нескольких статических страниц/блогов?

Здравствуйте!

Задача заставить шаблон отображать отличный от основного фон в шапке (в header) для нескольких конкретных блогов и статичных страниц.

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

Хочу верить, что для страниц сработает такая конструкция:

<header id="header" {if $sAction=='page' && ($sEvent=='help' or $sEvent=='about' or $sEvent=='feedback')}class="myway"{/if}>...</header>


Как в эту конструкцию добавить еще и несколько блогов? Поправьте, пожалуйста, если я ошибаюсь.

8 комментариев

avatar
{if ($sAction=='page' and ($sEvent=='help' or $sEvent=='about' or $sEvent=='feedback')) or ($sAction=='blog' and ($sEvent=='help' or $sEvent=='about' or $sEvent=='feedback')}
avatar
спасибо, получилось, если закрыть внешнюю скобку во втором условии — вот так:
{if ($sAction=='page' and ($sEvent=='help' or $sEvent=='about' or $sEvent=='feedback')) or ($sAction=='blog' and ($sEvent=='help' or $sEvent=='about' or $sEvent=='feedback'))}
avatar
Да, я просто забыл закрыть.
avatar
подскажите, пожалуйста, как правильно определить в условии {if} вложенные статические страницы?

не удается решить задачу для вложенных страниц… пробую так:
{if ($sAction=='page' and ($sEvent=='pagename' and $sEvent=='sub-pagename'))}

и так
{if $sAction=='page' and ($sEvent=='pagename' and $sEvent=='sub-pagename')}

не срабатывает
avatar
получилось сделать через
{if $oPage->getId()==xx}
где хх — id страницы в базе
avatar
Вторые скобки, на условие or поменяй. Конечно у тебя одна страница никогда не будет сразу двумя $sEvent и не выполнится (=
avatar
если кому-то еще поможет, то мне удалось добиться нужного результата вывода различных шаблонов для конкретных блогов/статических страниц через следующие условия:

{if ($sAction=='blog' and ($oBlog->getId()>=XX and $oBlog->getId()<=YY)) or ($sAction=='page' and $oPage->getId()==ZZ)}
	{include file='template1.tpl'}
{elseif ($sAction=='blog' and ($oBlog->getId()>=NN and $oBlog->getId()<=MM)) or ($sAction=='page' and $oPage->getId()==OO)}
	{include file='template2.tpl'}
{else}
	{include file='template.tpl'}
{/if}
avatar
на практике вариант оказался не самым универсальным — в этой конструкции глюк с плагином Static Page в админке: при заходе на адрес /page/admin/* — вываливается ошибка...:(

самое глупое, что приходит на ум — отключить/изменить вывод header.tpl для этого плагина…

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