Neow15ard
Постоялец
- Регистрация
- 26 Ноя 2008
- Сообщения
- 418
- Реакции
- 190
- Автор темы
- #1
На сайте встроенное меню сделано через яву котороя считывет подкатегории и скрывает их , делая меню вложенным ( видно только категории). Подскажите как сделать единый цикл без явы, что вывести категории в цикле и в подцикле подкатегории. (просто списком, но чтоб я видел какие из них категории а какие подкатегории)
:bc:
Сам код исполнен в шаблоне смарти
в виде
PS / Во вложении файл целиком .
:bc:
PHP:
var cats = [
{foreach from=$qacats_ask item=qacat name=cats}
[{$qacat.cat_id}, [ {section name=subcat_loop loop=$qacat.subcats}
{capture assign=qa_tmp_title}{lang_print id=$qacat.subcats[subcat_loop].cat_title}{/capture}
[{$qacat.subcats[subcat_loop].cat_id}, '{$qa_tmp_title|htmlspecialchars_decode}']{if not $smarty.section.subcat_loop.last}, {/if}
{/section} ] ]{if not $smarty.foreach.cats.last},
{/if}
{/foreach}
];
function updateSubcats() {
$('subcat_select').erase('html');
if ($('cat_select').get('value') > 0) {
var newOption = new Element('option', {
'value': -1,
'text': '{/literal}{lang_print id=27003437}{literal}'
});
newOption.inject($('subcat_select'));
}
for(cat in cats){
if (cats[cat][0] == $('cat_select').get('value')) {
for(i=0;i<cats[cat][1].length;i++){
var newOption = new Element('option', {
'value': cats[cat][1][i][0],
'text': cats[cat][1][i][1]
});
newOption.inject($('subcat_select'));
}
}
}
}
в виде
PHP:
{section name=cat_loop loop=$qacats}
{capture assign='cat_string_name'}{lang_print id=$qacats[cat_loop].cat_title}{/capture}
<p class='{$qacats[cat_loop].cat_class}'><img src='./images/my_que.gif' border='0' > <a href='{$url->url_create("question_cat", $smarty.const.NULL, $qacats[cat_loop].cat_id,$cat_string_name)}'> {$cat_string_name}</a></p>
{/section}
PS / Во вложении файл целиком .