Autor Zpráva
Ivorius
Profil
Začínám se smarty a mám trošku problém jak to celé dát dohromady. Do teď jsem to řešil tak, že v index.php si dle url naincluduji požadovaný soubor, kde naplním atributy title a main a pak přes metody v indexu.php vypíšu celou stránku.

$shoper->display_header();
$shoper->display_main();
$shoper->display_side();
$shoper->display_footer();

Jak ve smarty si připravit nějakou takovou kostru stránky a pak to spojit s těmi informacemi v includovaných souborech?

Ve většině příkladů co jsem našel, tak se věnují pouze zobrazením šablony z těch includovaných souborů, ale moc se neřeší to okolo. Chápu že bych mohl v šabloně přes include ve smarty vložit hlavičku, patičku atd. Ale co když se pak rozhodnu nezobrazit v některých šablonách sloupec? To budu muset upravovat polovinu šablon ručně? Určitě na to bude nějaký figl ne?
AM_
Profil
Smarty podporuje {include}, takže si takto opravdu můžeš poskládat stránku podobně, jako jsi to dělal doposud.
Ale co když se pak rozhodnu nezobrazit v některých šablonách sloupec?
určitě se rozhoduješ na základě nějakého deterministického faktu, smarty podporuje {if}, takže ten include nacpeš do něj

mimochodem, ve tvém uvedeném skriptu nevidím, že bys měl na zobrazení postranního sloupce nějakou podmínku, takže se ti zobrazoval vždy, ne?
Ivorius
Profil
Dobře díky, já jsem spíše myslel něco takového, že se rozhodnu přidat další sloupec a budu muset otevřít všechny šablony a {includovat} další smarty šablonu.

Nevíš náhodou o nějakém projektu ve spolupráci se smarty? Prošel jsem si ten guestbook na smarty.net, ale tam právě vůbec neřeší to kolem.
AM_
Profil
Ivorius:
Dobře díky, já jsem spíše myslel něco takového, že se rozhodnu přidat další sloupec a budu muset otevřít všechny šablony a {includovat} další smarty šablonu.
Tak to máš zřejmě nějak špatně navrženou strukturu těch šablon - od toho právě šablony sou, aby se ti neduplikovala data a mohl jsi stejnou věc mít ve stejném souboru. Takže budeš mít třeba document.tpl, kde bude "stálá" část stránky, a do něj budeš dle nějaké proměnné vkládat obsah (uvod.tpl, lorem.tpl, ipsum.tpl). A když budeš chtít přidat cokoli do stálé části, dáš to do document.tpl

Nevíš náhodou o nějakém projektu ve spolupráci se smarty?
pod tím si představuješ co? nějaké diskusní fórum o Smarty? nevím, ale Smarty má dobrou dokumentaci, a co není tam, dá se obvykle vygooglit
Tasartir
Profil
Ivorius:
Nevíš náhodou o nějakém projektu ve spolupráci se smarty?
Myslíš už hotové řešení? Několikrát jsem používal CMS Made Simple, který využívá SMARTY šablonování. Mně se s ním dělá příjemně, a ani moc výtek jsem na něj nikdy neslyšel (ale jestli to nebude třeba tím, že není tak "mediálně" známý jako jiné, to objektivně posoudit nedokážu).
Ivorius
Profil
Tasartir:
Myslíš už hotové řešení? Několikrát jsem používal CMS Made Simple, který využívá SMARTY šablonování. Mně se s ním dělá příjemně, a ani moc výtek jsem na něj nikdy neslyšel (ale jestli to nebude třeba tím, že není tak "mediálně" známý jako jiné, to objektivně posoudit nedokážu).

Výborně, díky. Projdu si to, mě se totiž nejlíp učí, když to vidím jak to reálně pracuje.
ninja
Profil
Já jsme po různých experimentech zakotvil u formy, kde každá stránka, respektive typ stránky (např. u eshop to je Katalog, Detail, Kosik, atd.), má vlastní základní soubor a v něm je: include header, include menu, obsah, include footer a podobne.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: