Das ist ein historisches Überbleibsel. Früher wurden index.php und admin.php von Plugins üblicherweise vor direktem Zugriff geschützt, weil sie sonst unter Umständen unerwünscht Code ausführen konnten (besonders in Verbindung mit register_globals, was von PHP 5.4 an nicht mehr verfügbar ist). Später habe ich bei meinen Plugins die Versionsprüfung ergänzt (muss CMSimple_XH sein, und eine bestimmte Mindestversion wird erfordert) – mir schien das mal sinnvoll, um spätere Fehlfunktionen, die vielleicht nicht einfach zu debuggen sind, zu verhindern. Letztlich habe ich davon aber Abstand genommen – User sollten die Anforderungen in der Doku nachlesen, bevor sie ein Plugin installieren, und im Zweifel die Systemprüfung des Plugins konsultieren (wenn sie überhaupt bis dorthin kommen).
Jedenfalls kann diese Zugriffs- und Versionprüfung
ersatzlos gestrichen werden, da der einzige Code, der ausgeführt würde, gleich einen fatalen PHP-Fehler auslöst. Ganz korrekt ist das resultierende 500 Internal Server Error nicht wirklich (ein 403 Forbidden wäre wohl angebrachter), aber da mache ich mir keinen Kopf drum (letztlich sollte ja niemand auf eine solche Datei zugreifen, und würde CMSimple_XH einen vernünftigen Pluginloader zur Verfügung stellen, dann gäbe es das Problem sowieso nicht; man sollte Deklarationen/Definition nicht mit ausführbarem Code in einer Datei mischen, und konkret sollte nicht das Plugin selbst Code ausführen, sondern nur auszuführenden Code registrieren).