Ruzne latte sablony dle domeny ze ktere pristupuju
- TheOtherGuy
- Člen | 27
Dobry den,
jsem uplny zacatecnik a chtel bych se zeptat jak nastavovat odlisne latte sablony aplikace podle domeny, ze ktere na ni pristupuji. Jedna se o to, ze bych chtel mit jednu aplikaci pro x domen, kde kazda se bude lisit jenom ve vizualizaci. Data budou stejna pro vsechny domeny. Zkousel jsem si cist neco o routovani, ale tam se da odkazat pouze na presenter a jeho akci nebo view a i tak jsem z toho moc chytry nebyl.
Predem diky za jakoukoliv odpoved
- esorimer
- Člen | 114
Zdravím,
já načítám různé šablony podle jazyka a používám k tomu přetíženou
metodu setView, kterou jsem dal do BasePresenteru:
<?php
/**
* Add prefix for language to view, i.e. 'default.cs' for 'default' view and cs language.
* @param string $view View name, i.e. 'default'
*/
public function setView($view = 'default') {
$lang = $this->getLang();
$presenter = $this->request->getPresenterName();
$file = __DIR__.'/../templates/'.$presenter.'/'.$view.'.'.$lang.'.latte';
if(file_exists($file)) {
parent::setView($view . '.'.$lang);
} else {
parent::setView($view);
}
}
?>
Ty by jsi se ve funkci setView mohl rozhodovat na základě nějakého parametru umístěného v config.neon (který můžeš/měl bys/ mít pro kažodu doménu jiný).
Ikdyž v tvém případě by asi bylo lepší mít možnost nastavit v config.neon adresář(e), kde se budou hledat template soubory, což ale nevím, jestli jde (třeba poradí někdo zkušenější)…
- h4kuna
- Backer | 740
esorimer napsal(a):
Ikdyž v tvém případě by asi bylo lepší mít možnost nastavit v config.neon adresář(e), kde se budou hledat template soubory, což ale nevím, jestli jde (třeba poradí někdo zkušenější)…
Jazykové mutace mít ve vlastních souborech, je řešení, ale je tu k dispozici několik překladačů gettext-latte výhodou je rychlost nebo GettextTranslator
Editoval h4kuna (16. 4. 2013 10:25)
- TheOtherGuy
- Člen | 27
h4kuna napsal(a):
TheOtherGuy napsal(a):
Predem diky za jakoukoliv odpoved
$route = new Route('//<domain>/<presenter>/<action>', '...');
v presenteru si nastav persistentní vlastnost $domain a podle ni pak změn logiku, přetiž si třeba setView.
Super mockrat dekuju, vyzkousim :)
- esorimer
- Člen | 114
h4kuna napsal(a):
Jazykové mutace mít ve vlastních souborech, je řešení, ale je tu k dispozici několik překladačů gettext-latte výhodou je rychlost nebo GettextTranslator
jj, díky za info, GettextTranslator taky používám (na překlad formulářů, titulků atp.), setView používám v případě kdy je v template 90% jen text (statické stránky)