Hallo Florian,

Danke für die Verlinkung!

Toll dass du dich sofort mit Composer auseinandersetzt, das ist meines Erachtens nach heutzutage Pflichtprogramm in der PHP Entwicklung.

Hier noch ein paar Verbesserungsvorschläge zu deinem Autoloader:

  • Beende deinen Namespace mit einem \\ in der Composer Konfiguration, also FlorianBrinkmannCustomizeThemesInstaller\\, ansonsten werden nämlich auch Klassen da reinfallen, die diesen namespace als Teil-kette beinhalten.
  • Du solltest deinen Namespace aufteilen, um das Ganze handlicher zu machen. Die übliche Konvention ist: \ als Rootnamespace, und dann eventuell noch Module oder sonstige Einteilungen als weitere Unterteilugen. In deinem Fall also so etwas wie: FlorianBrinkmann\CustomizeThemesInstaller.
  • Before du den Autoloader von Composer lädst, solltest du erst überprüfen, ob die Datei auch existiert. Composer erzeugt den Autoloader nämlich nur für das Root-Package. Wenn dein Plugin als Abhängigkeit von einer ganze Webseite benutzt wird, z.B., dann gibt es die Datei nicht, da das vendor-Verzeichnis dann im Rootverzeichnis der Webseite landet. Also so in etwa wie hier: https://github.com/brightnucleus/jasper-client/blob/master/tests/bootstrap.php#L55-L59
  • Hoffe das kann dir weiter helfen!