Autor Zpráva
zalesak
Profil *
Ahoj, zkouším na novém projektu šablonovací systém smarty (verze 3), ale nedaří se mi ověřit, zda daná šblona existuje..

mám takovýto kód:
$smarty = new Smarty; //nastartujeme Smarty
$smarty->registerPlugin("modifier", "template_exist", "file_exists"); // modifier pro overovani existence souboru.. fce file_exist($fileName);
$smarty->assign('dir', $smarty->template_dir[0]); // do promenne dir si ulozime cestu k sablonam (project/templates)

$smarty->assign('body', 'body.tpl'); // nejaka sablona, kerou chceme overovat jestli existuje
$smarty->display('mainTemplate.tpl'); // a v posledni rade nacteme sablonu mainTemplate


Kód šablony mainTemplate.tpl:
{* podminka, pro overeni, zda exituje sablona $body... v nasem rpipade body.tpl *}
{if $body|template_exist}existuje{else}neexistuje{/if}


Problém nastává v tom, že $body|template_exist dělá to, že hledá šablonu body.tpl v adresáři / a ne v adresáři project/templates... potřebuji tu podmínku tedy sestavit nějak takto:
{if $dir/$body|template_exist}existuje{else}neexistuje{/if}

ale nedaří se mi to správně zapsat, takovýto zápis vrací chybu: Division by zero

Nemáte s ověřováním existence šablony někdo zkušenosti? využívám SMARTY 3
zalesak
Profil *
tak nakonec budu overovat existenci souboru primo v php a ne v sablonach.... viz:
http://www.smarty.net/docs/en/api.template.exists.tpl

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:

0