@Karl
Ich hätte einen Verbesserungsvorschlag.
Das konditionelle Laden von z.B. CSS-Dateien (z.B. für die Anzeige des EU-Cookie-Banners in der
general_bottom.css.php) hat keine Wirkung wenn das Shop-Skript für die Zusammenfassung und Komprimierung der CSS-Dateien nichts davon weiß. Das heißt, wenn eine Einstellung im Backend in der Template-Konfiguration Auswirkungen auf geladene CSS- und/oder JS-Dateien hat, sollte eine neue Komprimierung angestossen werden.
Das kann man machen mittels
- touch(EINE_DATEI_DIE_IMMER_GELADEN_WIRD)
womit man die Filetime einer solchen Datei ändert und somit eine Neukomprimierung erzwingt,
oder - (am Besipiel CSS)
file_put_contents(DIR_FS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/css/tpl_plugins.min.css', '', LOCK_EX);
Womit man die Datei die den komprimierten Code enthält leert, wodurch ebenfalls eine Neukomprimierung erzwungen wird.
Aufgefallen ist es mir bei Änderung des Darstellungsortes des Cookie-Banners, welches keine Wirkung hatte bis ich eine Neukomprimierung des CSS händisch erzwungen habe.
Allerdings sollte man vielleicht auch nicht konditionslos Dateien wie
preparemenu.min.js laden, da die Verwendung von Einstellungen im Backend abhängt, also, für den genannten Fall, ob man das Top-Menu verwendet. Auch hier könnte man bei Aktivierung oder Deaktivierung des Top-Menus eine Neukomprimierung mit oder ohne die genannte Datei erzwingen.
Das eine bringt User-Ferundlichkeit, das andere spart Ressourcen und lädt bei Bedarf weniger Code.
Ansonsten, nochmals Kudos, Chapeau und Respekt für die umfangreiche und professionelle Arbeit.
Gruß,
noRiddle