[minitpl] vpis v vsak .tpl fajl

Lp!

Zanima me, kako, če se da, vpisati neko konstanto v "vsak" .tpl fajl. Da dam konkreten primer..

<title>{SITENAME} - {PAGE_TITLE}</title>

PAGE_TITLE definiram v datoteki, kjer zloadam .tpl file (torej se na vsak fajl spreminja)
SITENAME pa bi bila konstantna, torej zmeraj enaka

Je potrebno SITENAME vpisat (assign) v vsaki datoteki, ali se da v kaki osnovni datoteki, ki jo vsebuje vsaka datoteka (.php)

Upam, da razumete.. lp!

6 odgovorov

Kolikor vem, vsak define ima global scope, tako da ja, če definiraš enkrat, bilo kje, bo na voljo.
Samo pač, mora bit definirano preden prvič kličeš.

BTW. to stvar bi ugotovu v eni minuti, če bi sam probal ali pogledal define() na php.net

Mislim, da me nisi razumel, al pa jaz ne razumem tebe.. Bom daš še bolj konkreten primer:

register.php

<?php
require_once('common.php');

$tpl->load('register.tpl');
$tpl->assign('PAGE_TITLE', 'Registracija');
$tpl->render();
?>

common.php

<?php
// tu bi rad definiral/vpisal SITENAME
// $tpl->assign_to_every_file('SITENAME', 'Ime Strani');
?>

register.tpl

{include header.tpl}
{include footer.tpl}

header.tpl

<head>
<title>{SITENAME} &bull; {PAGE_TITLE}</title>
</head>

<body>

footer.tpl

</body>
</html>

Bolj skoraj da nemorem pokazat kaj želim.. upam, da približno razumeš/te kaj želim. Hvala v naprej za odgovore!

juresl, kolikor jaz razumem dokumentacijo minitplja, sta {SITENAME} in {$SITENAME} identična in bereta spremenljivke, lokalne templatu. Spremenljivke assignaš tako kot si že ugotovil. Če želiš, da minitpl izpiše konstanto, jo moraš prefixati z underscorom (znakom ), torej takole {SITENAME}, konstanto pa definiraš v PHP kodi kot ponavadi, torej z define('_SITENAME', 'Ime Strani');

1

Super, hvala. Očitno sem površno prebral dokumentacijo.

Več kot očitno :) Jaz sem zadevo našel v dveh minutah, pa minitplja nisem nikoli uporabljal :P

Aha hehe oprosti sploh nisem razumel da je govora o kakšnem template enginu :D