Mailinglisten-Archive |
Hallo.
> /* Bis hierhin ist alles i.O. ;-) */
>
> /* Und das hier wird dann gar nix mehr: */
>
> class MySmarty extends Smarty {
> function MySmarty() {
> $this->Smarty();
> $this->template_dir = DOC_ROOT."/templates/";
> $this->compile_dir = DOC_ROOT."/_smarty/templates_c/";
> $this->config_dir = DOC_ROOT."/_smarty/configs/";
> $this->cache_dir = DOC_ROOT."/_smarty/cache/";
> }
> }
>
> komischerweise müssen die pfade aber eigentlich alle korrekt sein,
> denn wenn ich die verzeichnisse "nicht objektorientiert" einbinde,
> klappt alles:
Äh ... DOC_ROOT ist in der Klasse vorhanden?!
Deine Mail hat zumindest von ihrem Aufbau auch einen Fehlern, und zwar
solltest Du eine Klasse _vor_ der Initierung erweitern und dann die
erweiterte Klasse aufrufen.
Also erst die richtige Smarty-Datei holen
require(_ROOTDIR.'/system/smarty/Smarty.class.php');
Dann deine Erweiterung
require(_ROOTDIR.'/system/smarty/MySmarty.class.php');
Und dann initalisiert Du Deine _Erweiterung_; nicht Smarty!
$smarty = &new MySmarty;
Und dann legst Du Deine Template-Ordner fest ...
$smarty->template_dir = 'templates/hermes/';
(Deine Mail zumindest impliziert die falsche Reihenfolge Deiner
Anstrengungen).
Abgesehen davon erschliesst sich mir gerade so überhaupt nicht, warum Du
die Template-Ordner innerhalb einer Klasse definieren willst???
Thomas
php::bar PHP Wiki - Listenarchive