[gelöst] Theme wird automatisch deaktiviert
am 05.09.2012 - 22:51 Uhr in
Hallo zusammen,
ich habe eine Drupal 7 Installation mit einem selbst entwickeltem Theme.
Auf meiner Testumgebung (xampp unter Windows XP) lief und läuft diese fehlerfrei.
Nachdem ich auf der Liveumgebung (Linux) nun eine saubere Installation von drupal 7 machte und dieses Theme aktivierte (als Standard), schien auch alles super zu laufen, bis ich am nächsten Morgen auf die Seite schaute. Dort fehlte das komplette Theming. Unter Design stand dies nun als deaktiviert. Auch eines der anderen aktivierten Themes wurde nicht angezeigt (Garland, Seven).
Dieser Fall tritt immer wieder in unregelmäßigen Abständen und nicht nachvollziehbar auf. Mal erst nach 2 Tagen und dann auch mal wieder nach einer Stunde.
Im Protokoll tauchen immer wieder diese Meldungen auf:
Notice: Trying to get property of non-object in _drupal_theme_initialize() (Zeile 145 von ... /includes/theme.inc).
Warning: array_keys() [function.array-keys]: The first argument should be an array in template_preprocess_maintenance_page() (Zeile 2705 von .../includes/theme.inc).
Notice: Undefined index: themename in drupal_theme_initialize() (Zeile 100 von .../includes/theme.inc).
Warning: Invalid argument supplied for foreach() in template_preprocess_maintenance_page() (Zeile 2705 von .../includes/theme.inc).
Ich kann mir allerdings kaum vorstellen, dass das der Grund für die Deaktivierung des Themes ist, da diese Meldungen auch erscheinen, wenn sich das Theme nicht automatisch deaktiviert hat.
Hat oder hatte jemand dieses Problem auch schon und/oder kennt eine Lösung für dieses Rätsel?
- Anmelden oder Registrieren um Kommentare zu schreiben
Hast du die gleichen
am 06.09.2012 - 07:10 Uhr
Hast du die gleichen Drupal-Versionen / Modul-Versionen auf Test / LInux-Server ?
Hast du auf dem Linux-Server irgendwelche Module von Core entfernt - drupal.org issue ?
Hast du die Caches schon mal geleert ?
Hast du schon versucht das Theme in der Datenbank zu deaktivieren ( system-Tabelle - Feld status auf 0 setzen - für dein Theme )..
Für alles Weitere müsste man das Theme schon mal genauer in Augenschein nehmen - gerade die template.php bzw. die .info Datei.
SteffenR
Guten Morgen, ja, ich benutze
am 06.09.2012 - 08:06 Uhr
Guten Morgen,
ja, ich benutze Drupal 7.15 mit exakt den gleichen Modulen und Einstellungen (bis auf ggf. Pfadeinstellung) auf Test und Live.
Caches habe ich auch geleert.
In der Datenbank war ich auch schon und habe das Theme deaktiviert.
Ich habe mir heute Nacht allerdings noch mal die Protokolle ganz ganz genau angesehen.
Möglicherweise (bzw. fast sicher) ist ein alter VHost Eintrag die Ursache der nicht in meiner "sites.php" als Alias eingetragen ist.
Den genauen Zusammenhang und meinen Fehler an der Stelle werde ich hier ausführlich posten, wenn ich dies bestätigen kann.
André
Meine Annahme hat sich
am 06.09.2012 - 19:48 Uhr
Meine Annahme hat sich bestätigt.
Mein Fehler:
Die "settings.php" unter "default" und der (Multisite-)Installation des Webs waren identisch.
Das Theme liegt aber nicht unter "default".
Den Rest kann man sich schon denken...
Es gab noch einen sehr alten VHost- Eintrag für eine alte Domain (mit fehlerhafter Weiterleitung) der ebenfalls auf das Rootverz. der Installation zeigte und nicht in der "sites.php" als Alias eingetragen war.
Nun kam es so, dass wenn der Cache aktualisiert werden musste und diese alte Domain vor der eigentlichen aufgerufen wurde, das Theme natürlich nicht gefunden werden konnte und deaktiviert wurde (schlaues Drupal).
Die Lösung war also denkbar einfach.
Unter default besteht nun eine eigene Installation, um ggf. weitere Unbekannte abzufangen und die alte Domain wird auf die neue über htaccess weitergeleitet.