CONTENT MANAGEMENT SYSTEM
Blox Logo
Blox CMS — блочный метод сайтостроения
.
 
Blox Help

←→

Как сделать многоуровневое меню для pick-навигации

В приведенных примерах применялось только одно меню. Однако запросы к целевому блоку можно производить из нескольких меню и/или из одного меню с несколькими уровнями. В этом случае, на каждое новое меню или на каждый уровень меню нужно в целевом блоке заводить отдельное поле.

Допустим, меню состоит из двух уровней (категория и подкатегория), тогда в целевом блоке должны быть два ключевых поля, допустим 3-е и 4-е. А ссылки для запросов в навигационных блоках должны выглядеть так:

Шаблон для категорий

catalog_categories.tpl

<?php
. . . . . 
$goodsBlock = 9;
echo "<a href='?page=$page&block=$goodsBlock";
echo "&pick[3][eq]={$dat['rec']}"; # Запрос категории из родного блока
echo "&pick[4][eq]={$GLOBALS['pick'][$goodsBlock][4]['eq']}"; # Запрос подкатегории
echo "'>$dat[1]</a>";
. . . . . 
?>

Шаблон для подкатегорий

catalog_subcategories.tpl

<?php
. . . . . 
$goodsBlock = 9;
echo "<a href='?page=$page&block=$goodsBlock";
echo "&pick[3][eq]={$GLOBALS['pick'][$goodsBlock][3]['eq']}";
echo "&pick[4][eq]={$dat['rec']}";
echo "'>$dat[1]</a>";
. . . . . 
?>