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