Astra.CMS

 

 

Форум » Приемы конструирования и интеграции дизайна

Родительское меню для второго уровня

Стоит ли открыть форум? Напишите об этом по адресу admin@astracms.ru написав в теме "открыть форум". Я не автор движка и поэтому не могу консультировать так, как это делал бы он, но возможно у нас получится совместно находить решения.

Автор Текст сообщения

Zeves
Сообщений: 13

Есть меню, шаблон для которого сделан в виде
{section name=i loop=$links}
{if $links[i].selected}<b>{$links[i].name}</b><br>
{else}
<a href="{$links[i].link}">{$links[i].name}</a><br>
{/if}
{/section}
При этом, если текущая страница является подразделом, то автоматически формируется меню подраздела вместо меню раздела. Хотелось бы сделать так, чтобы меню текущего подраздела "вкладывалось" в текущий пункт основного раздела (древовидность на два уровня). Но не понимаю как это можно сделать. Еще более непонятно как сделать так, что бы при выполненном указанном условии, если мы заходим еще на уровень глубже меню оставалось бы без изменений (то есть не появлялся бы третий уровень вообще, а оставался бы активным текущие первый и второй)
 
aristoc

admin
Сообщений: 1159

В настройках блока галочками можно отметить ссылки подуровней.
В шаблоне выводить их дополнительным циклом.
{section name=i loop=$links}
{if $links[i].selected}<b>{$links[i].name}</b><br>
{else}
<a href="{$links[i].link}">{$links[i].name}</a><br>
{/if}
... {* пункты второго уровня. *}
{section name=j loop=$links[i].sublinks}
<a href="{$links[i].sublinks[j].link}">{$links[i].sublinks[j].name}</a><br>
{/section}
...
{/section}
 

Zeves
Сообщений: 13

Такой цикл выведет подуровни текущего уровня, что мне совсем не нужно. Нужно как раз наоборот. Поясню на примере:
1) Есть меню в следующем виде:
+ О компании
+ Каталог
+ Контакты

2) Кликаем на "О компании" должны получить
- О компании
  + история
  + состав
+ Каталог
+ Контакты

3) Кликаем на "Состав" (тоже раздел, а не страница), получаем уже без подменю 3-го уровня:
- О компании
  + история
  - состав
+ Каталог
+ Контакты

По поводу галочек для ссылок подуровней не совсем понял что имеется в виду.
 
aristoc

admin
Сообщений: 1159

Ну добавить условие
{if $links[i].selected} ... вывод подуровней {/if} 
чтобы выводилось если выбран первый.
 

Zeves
Сообщений: 13

admin писал(а):
Ну добавить условие
{if $links[i].selected} ... вывод подуровней {/if} 
чтобы выводилось если выбран первый.

Да нифига оно так не работает - $links уже содержит пункты страниц раздела, куда заходишь. А родительский уровень (то есть список разделов) при этом не выводится. Может я не совсем внятно объяснил - проблема в выводе родительского уровня при  оперировании с разделами, а не со страницами (со страницами как раз все и работает как вы говорите, тут у меня непоняток не было). В хелпах я не нашел как обратится к родительскому разделу - все только к текущему или подразделам.
 
aristoc

admin
Сообщений: 1159

Ничего не понимаю. Как вы этот блок и чем заполняли и чего хотите сделать. Думать как выстроить логику формирования вашего особого меню ваша задача.
 

Zeves
Сообщений: 13

Вроде разобрался, спасибо за консультацию
 

Вы не можете добавить сообщение. Вам необходимо авторизироваться на сайте под своим логином либо зарегистрироваться.