Default parametr v hezké URL
- RomanNTA
- Člen | 2
Ahoj,
Pro Vás to bude možná hračka :)
Web je na nette.nta/ a po prokliknutí na fotogalerií se
dostanu na
nette.nta/fotogalerie/
Chybí mi tam první parametr a to je rok tj.
nette.nta/fotogalerie/2015/
neboli:
při vstupu na presenter Fotogalerie:default si umím zjistit jaký je parametr rok. Je to vždy aktuální rok. V url mi toto chybí. Pokud se následně proklikám v submenu roky, pak ve všech, včetně aktuálního roku, je již správně rok v url uveden.
Celé mi to funguje … jen pro roboty pak mám stejnou stránku dvakrát.
A to při prvním vstupu.
nette.nta/fotogalerie/
nette.nta/fotogalerie/2015/
jsou pak identické … a příští rok se to posune na 2016
Routy:
$router[] = new Route('fotogalerie/<rok>[/<galerieId>]-[<galerieJmeno>]', array(
'presenter' => 'Fotogalerie',
'action' => 'rocnik',
'rok' => date("Y")
));
$router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
Routy mám … viz výše a jedou. Zkušel jsem i laborovat se zavorkami,
ale k ničemu to nevedlo.
Funguje <rok [0–9]+> nebo <rok=2015 [0–9]+>
Předpokládám, že počátek bude u volání z menu, což je
<li><a href="{link Fotogalerie:default}" class="first {ifCurrent Fotogalerie} active {/ifCurrent}">Foto</a></li>
a dál nevím. Jak se sestaví url s defaultním parametrem, který chci vždy vypsat v url ? Tj. i při prvním vstupu na presenter ? Je na to řešení ?
Dík
- jiri.pudil
- Nette Blogger | 1029
Střílím od boku, ale mohlo by to být tím, že odkazuješ na
Fotogalerie:default, ale v routě máš Fotogalerie:rocnik, takže ti ten odkaz
vezme až ta následující, obecnější routa. Co se stane, když odkážeš
{link Fotogalerie:rocnik}
?