Seite 1 von 1
Verbessertes cinclude in Modulen
Verfasst: Mo 10. Dez 2018, 15:57
von bodil
Wenn man innerhalb eines Moduls eine Datei einbinden will, die im selben Modulverzeichnis liegt, dann sieht das z. B. so aus:
Code: Alles auswählen
cInclude('frontend', 'data/modules/content_search_results/php/class.module.search_result.php');
Der offensichtlichste Nachteil dieser Methode ist, dass das Modul nicht umbenannt werden darf. Der Verzeichnisname würde sich ändern, somit wäre der Pfad falsch, über den die Datei eingebunden wird.
Unabhängig von der technischen Realisierbarkeit fände ich besser, etwas derartiges würde funktionieren:
Code: Alles auswählen
cInclude('thisModule', 'php/class.module.search_result.php');
Grüße!
Bodil
Re: Verbessertes cinclude in Modulen
Verfasst: Mo 10. Dez 2018, 17:14
von Faar
Probiere das mal:
Code: Alles auswählen
$myModul = new cModuleHandler($cCurrentModule);
$phpPfad = $myModul->getPhpPath();
echo $phpPfad;
Ansonsten hier durcharbeiten:
https://docs.contenido.org/display/CONDEVE/cRegistry
https://api.contenido.org/latest/class- ... ndler.html
Re: Verbessertes cinclude in Modulen
Verfasst: Mo 10. Dez 2018, 17:36
von bodil
Oder so! Vielen Dank!
Re: Verbessertes cinclude in Modulen
Verfasst: Di 11. Dez 2018, 23:34
von xmurrix
Hallo bodil,
will man im Modul PHP-Sourcen einbinden, die auch im gleichen Modulverzeichnis liegen, kann man das folgendermaßen machen:
Der Kontext ist dabei das Modul, in der die cInclude() Funktion verwendet wird, und die einzubindende Datei muss sich innerhalb des php-Ordners des Moduls befinden.
Gruß
xmurrix
Re: Verbessertes cinclude in Modulen
Verfasst: Mi 12. Dez 2018, 08:37
von bodil
Hallo xmurrix!
Das ist ja genau das, was ich gesucht hatte ... vielen Dank!
Vielleicht sollte man das in den Beispielmodulen so einbauen?
Viele Grüße!
bodil
Re: Verbessertes cinclude in Modulen
Verfasst: Fr 15. Mär 2019, 22:06
von xmurrix
Für die Verwendung von cInclude() in Modulen gibt es ein Ticket:
https://issues.contenido.org/browse/CON-2775
Grüße
xmurrix