Ciao a tutti,
ho la (malsana) necessità di stampare un menu "predefinito" di una sezione del sito quando mi trovo in sezioni che non hanno figli.
Per sezioni intendo pagine di primo livello.
In pratica dovrei passare al menu quando $count è = 0 l'alias di un altra pagina dalla quale costruire il menu... qualche idea?
stampare un menu di un altra pagina [RISOLTO]
Moderator: magallo
stampare un menu di un altra pagina [RISOLTO]
Last edited by axxe16 on Mon May 03, 2010 10:34 am, edited 1 time in total.
Re: stampare un menu di un altra pagina [RISOLTO]
Ho risolto utilizzando CGSimpleSmarty ;D
Questo script permette di stampare ricorsivamente i figli di un alias fornito come parametro
Per ogni nodo viene verificato se l'elemento selezionato ha figli e se sono visibili
Lo script in effetti ha un difetto... nel caso in cui una delle pagine sia in realtà un collegamento ad una pagina interna viene visualizzata la pagina originale e non il redirect, in pratica si bypassa il redirect. Non so se possa essere considerato un baco... 
Questo script permette di stampare ricorsivamente i figli di un alias fornito come parametro
Per ogni nodo viene verificato se l'elemento selezionato ha figli e se sono visibili
Code: Select all
{$cgsimple->get_children('nomeAlias',false,'children')}
{if count($children)}
<ul class="firstLevel">
{foreach from=$children item='child'}
{if $child.show_in_menu}
<li><a href="index.php?page={$child.alias}">{$child.title}</a>
{$cgsimple->get_children($child.alias,false,'sub_children')}
{if count($sub_children)}
<ul>
{foreach from=$sub_children item='sub_child'}
{if $sub_child.show_in_menu}
<li><a href="index.php?page={$sub_child.alias}">{$sub_child.title}</a></li>{/if}
{/foreach}
</ul>
</li>{/if}
{/if}
{/foreach}
</ul>
{/if}

Last edited by axxe16 on Mon May 03, 2010 10:37 am, edited 1 time in total.
Re: stampare un menu di un altra pagina [RISOLTO]
Ecco usando selflink tutto torna a posto:
Code: Select all
{$cgsimple->get_children('nomeAlias',false,'children')}
{if count($children)}
<h2>Chi siamo</h2>
<ul class="firstLevel">
{foreach from=$children item='child'}
{if $child.show_in_menu}
<li>{cms_selflink page=$child.alias text= $child.title}
{$cgsimple->get_children($child.alias,false,'sub_children')}
{if count($sub_children)}
<ul>
{foreach from=$sub_children item='sub_child'}
{if $sub_child.show_in_menu}
<li>{cms_selflink page=$sub_child.alias text="$sub_child.title}</li>{/if}
{/foreach}
</ul>
</li>{/if}
{/if}
{/foreach}
</ul>
{/if}