Include ruznych sablon v ruznych presenterech
- Tomas Jancik
- Člen | 103
Zdravim
mam web vseho vsudy o trech presenterech (a v kazdem nekolik akci)
Muj problem je, ze chci do kazdeho vlozit jine menu
Vytvoril jsem sablonu menu.latte pro kazdy presenter, ale ted nevim jak jej
includovat… pri pouziti {include menu.latte} se sablona hleda jen ve sloze
/templates/ a ne v /templates/<presenter> jak bych ja potreboval…
Zkousel jsem i ruzne kombinace s $presenter->getName(), ale stale se mi
nedari dosahnout chteneho vysledku… Poradi nekdo
PS: jeste me napadlo to generovat jako componentu primo v presenteru, kde bych si to nakodil… Co si myslite o tomto zpusobu?
- nanuqcz
- Člen | 822
Ahoj, pokud jsem tě pochopil správně, tak ten příkaz
{include menu.latte}
používáš v layoutu. Napadá mě
takovýhle způsob s využitím dědičnosti šablon:
soubor templates/@layout.latte
<html>
<body>
<div id="header"></div>
<div id="menu">
{block #menu}{/block}
</div>
<div id="content">
{block #content}{/block}
</div>
</body>
</html>
soubor templates/Articles/default.latte
{block #menu}
{foreach $links as $link}<a href="{$link->href}">{$link->text}</a>{/foreach}
{*případně tady můžeš vložit ten {include menu.latte} <- pak se bude brát z aktuální složky*}
{/block}
{block #content}
<p>{!$article->content}</p>
{/block}
V ostatních šablonách si pak můžeš {block #menu}
vykreslit zase jinak. Stačí takhle?
- Tomas Jancik
- Člen | 103
@xxxObiWan > diky za radu… mozna pujdu touto cestou, nicmene se mi moc nelibi, ze bych pak musel v kazde sablone davat zase ten include… chtel bych ho napsat jen jedou v @layout
@HosipLan > to castecne souvisi s moji druhou otazkou… udelat si na to componentu… ale nevim ktery reseni je lepsi (sablona nebo komponenta)… osobne bych radsi sel pres ty sablony… ty menu nebou nijak slozity
- Tomas Jancik
- Člen | 103
Lopo wrote:
a co tak nieco na sposob
{include $presenter->name.'/'.$presenter->action.'.latte'}
???
presne to jsem hledal… jen se mi nedarilo spojit ty stringy a promenne dokopy :) diky