In dem ersten Plugin habe ich unter anderen folgende Variablen Deklariert und Definiert:
Code: Alles auswählen
// Template
$plugin_name = "xst_contactTeaser_pro";
$tplName = "standard"; // define Template-Folder
$tplPath = cRegistry::getBackendUrl().$cfg['path']['plugins'].$plugin_name."/templates/".$tplName;
Code: Alles auswählen
// Template
$plugin_name = "xst_contactTeaser_pro_jobs";
$tplName = "standard"; // define Template-Folder
$tplPath = cRegistry::getBackendUrl().$cfg['path']['plugins'].$plugin_name."/templates/".$tplName;
Klar kann man hier mit einem Array arbeiten, den sich an den Plugin-Namen anlehnt.
Aber nur mal so aus Interesse: Gibt es da noch andere Abgrenzungsmöglichkeiten, damit Variablen die in einem Plugin definiert und genutzt werden auch in diesem Scope bleiben?
Sonst steigt ja mit wachsender Anzahl und Komplexität der Plugins die Wahrscheinlichkeit, dass sich unangenehme Nebeneffekte mit anderen Programmbestandteilen ergeben.
Habe es für meinen Fall erst mal so gelöst, dass ich einen Array $plugin['pluginName'] nun als Pluginspezifischen Datenspeicher nutze.
Code: Alles auswählen
// Template
$plugin['xst_contactTeaser_pro']['tplName'] = "standard"; // define Template-Folder
$plugin['xst_contactTeaser_pro']['tplPath'] = cRegistry::getBackendUrl().$cfg['path']['plugins']."xst_contactTeaser_pro/templates/".$plugin[$plugin_name]['tplName'];