Как создать условие на проверку номера категории каталога?
Задача проверки номера каталога, как её решить?
Что-то типа: {IF CAT_ID=1}{/IF}?
Зависит от того, ГДЕ Вы эту задачу решаете. Если в скрипте PHP, можно использовать, например, переменную $_GET (часто $_GET['cPath'] содержит нужные данные). Если в шаблоне, то в зависимости от шаблона и от того, что передано в шаблон скриптом.
Хотелось бы в шаблоне shopos_paradise. Как достучаться до переменной "номер категорий каталога"?
Если в шаблоне, то в зависимости от шаблона и от того, что передано в шаблон скриптом.
Вы бы написали, в каком именно файле шаблона. Возможно, что она просто не определена для шаблона и никак нельзя достучаться. Тогда в модуле соответствующем надо эту переменную самостоятельно создавать для шаблона. Есть еще путь не очень красивый - в файле шаблона использовать {php}{/php}.
Основной смысл идей: 1. Главное меню. 2. Меню каталога И в зависимости и выбранного пункта меню в шапке сайта подгружается image с соответствующей тематикой.
Всё это нужно организовать в файле шаблона index.html.
Я уже рассматриваю такие варианты:
<div id="header"> <!-- LOGOTYPE --> <a href="{$mainpage}" title="Главная">{$box_HEADER}</a> </div>
А для этого нужно создать свой бокс {$box_HEADER}.
Помогите кто чем может.
В index.php ближе к концу перед строкой
$osTemplate->display($template);
добавьте
$osTemplate->assign('CAT_ID', $_GET['cat']);
Тогда в шаблоне index.html можете писать
{if $CAT_ID==1} ..... {/if}
Как пулить доступ из index.html доступ у $cid или url?
Использовать произвольный PHP код внутри {php} {/php}
Ничего не происходить по коду {php} if ($cid==1) {echo 'sdsad';} {/php} Какие правила написание php в shopos?
Условие ($cid==1) не выполняется, потому и не происходит.
просто попробовать
{php}
echo $cid; {/php}
и посмотреть - выводится ли хоть что то
Ничего не выводит.
Товарищ grig дал подсказку. Осталось только найти куда приткнуть код ;D
Открываем файл \includes\header.php ищем там
$osTemplate->assign('price_list', os_href_link(FILENAME_CONTENT, 'coID=12', 'SSL')); и ниже добавляем
$osTemplate->assign('CAT_ID', $_GET['cat']);
далее в шаблоне, в файле index.html используем такую конструкцию
{if $CAT_ID==1} что будет в категории 1 {elseif $CAT_ID==10} что будет в категории 10 {elseif $CAT_ID==5} что будет в категории 5 {/if} Соответственно добавляя, удаляя условия
У меня работает. Работать будет только на страницах категорий. grig, спасибо Вам за подсказку!
В том же файле есть определение страниц, ниже комментария // Метки для закладок
Вот там можно аналогичным способом подрубить любую страницу и уже в шаблоне оперировать условиями Сам список всех файлов можно взять тут \includes\filenames.php Я правда не проверял, но думаю что будет работать.
В идеале конечно для всех файлов страниц дать определенный префикс и уже в PHP искать файлы с нужным префиксом и выдавать в шаблон... ну я не оч шарю, простите за тупизм)) Просто правильно объяснить не могу. по типу такого как html файлы вывода товара определяются в админке. т.е. если файл для вывода товара не выбран, то берется тот который есть в папке...
Спасибо NeBox, как долго я ждал этого решения. Всё работает.
Вот что получилось:
{if $CAT_ID==1} <img src="http://kurort/themes/shopos-paradise/img/logo/perfumery.jpg" width="900" height="254" /> {elseif $CAT_ID==2} <img src="http://kurort/themes/shopos-paradise/img/logo/souvenir.jpg" width="900" height="254" /> {else} <img src="http://kurort/themes/shopos-paradise/img/logo/default.jpg" width="900" height="254" /> {/if}
И чтобы убрать правую колонку шаблону при выводе товара
{if $CAT_ID>0} {else} <td width="180" valign="top" bgcolor="#17a1ae"> <div id="rightbox"> {$box_LATESTNEWS} {$box_FEATURED} {$box_ADMIN} </div> </td> {/if}
Если не ошибаюсь, то можно так
{if !$CAT_ID>0} <td width="180" valign="top" bgcolor="#17a1ae"> <div id="rightbox"> {$box_LATESTNEWS} {$box_FEATURED} {$box_ADMIN} </div> </td> {/if}
Источник
|