isometric wrote:Wie frage ich am besten ab, welche Hauptversion von CMSimple_XH verwendet wird und werte das dann aus?
Ich habe das bei einigen meiner Plugins
wie hier gelöst; oder vereinfacht weil CMSimple_XH vorausgesetzt wird,
wie hier.
isometric wrote:Beispiel Pseudo-Code:
Code: Select all
If Version 1.6
require_once $pth['folder']['classes'] . 'Menu.php';
elseif Version 1.7
require_once $pth['folder']['classes'] . 'Li.php';
Hier würde ich gar nicht auf Versionsnummern prüfen, sondern darauf, ob die Klasse XH_Li existiert. Bei XH 1.7 wird diese dann nämlich automatisch geladen, und nur bei XH 1.6 muss Menu.php manuell inkludiert werden (es sei denn, das wäre zuvor schon passiert, in welchem Fall XH_Li bereits existierte):
Code: Select all
if (!class_exists('XH_Li')) {
require_once $pth['folder']['classes'] . 'Menu.php';
}
Zum Namen der Klasse: unter XH 1.6 heißt die Klasse XH_Li; unter XH 1.7 heißt sie XH\Li (
Namespace) aber XH_Li ist weiterhin als Alias möglich. Das gilt auch für andere Klassen, so dass man am besten immer den Klassennamen mit dem Unterstrich verwendet, wenn man zu XH 1.6 kompatibel sein will.