Routování na stejnou stránku s jinou url
- adam_frajer
- Člen | 16
Ahoj,
mám otázku ohledně routování na svém vícejazyčném webu.
K překladům používám contributte/translation
standartně na stránky odkazuji nějak takto:
$router->addRoute('[<locale=cs cs|en|rs|rus|de>/][<module=Frontend>/][<presenter=Homepage>/][<action=default>]', array(
'module' => array(
Route::VALUE => 'Frontend',
Route::FILTER_TABLE => $moduleTable
),
'presenter' => array(
Route::VALUE => 'Homepage',
Route::FILTER_TABLE => $presenterTable
),
'action' => array(
Route::VALUE => 'default',
Route::FILTER_TABLE => $actionTable
)
));
Potřeboval bych ale udělat výjimku pro anglickou verzi, aby se mi v odkazu zobrazoval anglický název modulu, presenteru a action
momentálně moje adresa na localu vypadá nějak takto:
http://localhost/nette-web/www/en/kontakt/o-nas/nas-tym
,
ale pro angličtinu bych potřeboval, aby to bylo přeloženo a adresa vypadala
nějak
takto: http://localhost/nette-web/www/en/contact/about-us/our-team
Napadlo mě před tutou routu napsat pravidlo pro vyjímku nějak takto:
$router->addRoute('<locale=en>/contact/about-us/our-team/', array(
'module'=> 'AboutUs',
'presenter' => 'Homepage',
'action' => 'default'
));
Ale to mi pak vše odkazuje na anglickou verzi…
Máte prosím někdo nápad, jak toto řešit?
Napadlo mě udělat si kopii stránek, kdy se budou jmenovat anglicky, ale jsem si jistý že existuje elegantnější řešení.