předávání parametru odkazu v menu s rekurzí
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Petr Parolek
- Člen | 455
Ahoj, nemůžui přijít na to, jak mám předat do url v menu cestu do kategorie článků, např. /abc/xxx/zz/
template:
{block #menu}
<ul class="nav menu">
{foreach $menu as $item}
{dump $item}
<li class="item-{$item->id}">
<a href="{link :Front:Category:show $item->id,$item->alias}">{$item->title}</a>
{? $selection = $item->related('web_menu_items','parent_id')}
{if $selection->count()>0}
{include #menu, menu => $selection}
{/if}
</li>
{/foreach}
</ul>
{/block}
presenter:
$this->template->menu = $this->database->fetchMenuItems();
model:
public function fetchMenuItems() {
return $this->database->table('web_menu_items')->where('parent_id',1);
}
Díky moc za rady
- amik
- Člen | 118
Ahoj,
a proč toto nefunguje?
Stačí mít v URL id článku, např.
/front/category/show/123-nejaky-slug-clanku , což by ve tvém příkladě mělo
fungovat, článek se otevře, v URL adrese nemusí být celá cesta.
Pokud nemáš vyslovený důvod v URL uvádět celou cestu, nedělal bych to.
Pokud máš, můžeš si třeba v rekurzi předávat
{include #menu, menu => $selection, parents => array_merge($parents, [$item->alias])}
.
- Petr Parolek
- Člen | 455
díky moc, ale kde mám sebrat pole s rodiči?
Editoval ppar (16. 9. 2015 12:14)
- Petr Parolek
- Člen | 455
Url pouze s id a aliasem článku jsem měl udělaný, jak jsi psal. Více se mi líbí celá cesta v url, jak má třeba CMS Joomla