Altes Theme blockiert WP

  • Hallo,

    ich habe mir sage und schreibe 2008 ein Theme stricken lassen, welches das Layout von WP an dasjenige meines Internetauftritts anpasst. Zu Zeiten der Sozialen Medien dümpeln Auftritt und WP vor sich hin, funktionierten aber beide noch. Heute bekam ich eine Mail:

    Seit WordPress 5.2 gibt es eine eingebaute Funktion, die erkennt, wenn ein Plugin oder ein Theme einen fatalen Fehler auf deiner Website verursacht, und dich deswegen mit dieser automatisierten E-Mail benachrichtigt.

    In diesem Fall hat WordPress einen Fehler in deinem Theme „XYZ“ abgefangen.


    Besuche zunächst deine Website (https://MeineSeite.de/wordpress/) und überprüfe sie auf sichtbare Probleme. Besuche als nächstes die Seite, auf der der Fehler aufgetreten ist (https://MeineSeite.de/wordpress/wordpress/wp-login.php) und prüfe, ob es sichtbare Probleme gibt.


    Bitte kontaktiere dein Hosting-Unternehmen, um Unterstützung bei der weiteren Untersuchung dieses Problems zu erhalten.

    Wenn deine Website fehlerhaft zu sein scheint und du nicht mehr wie gewohnt auf dein Dashboard zugreifen kannst, hat WordPress jetzt einen speziellen „Wiederherstellungsmodus“. Auf diese Weise kannst du dich sicher in deinem Dashboard anmelden und weitere Untersuchungen durchführen.

    https://MeineSeite.de/wordpress/wp-login.php?action=enter_recovery_mode&rm_token=...&rm_key=...

    Wenn du Hilfe bei diesem Problem suchst, wirst du möglicherweise nach einigen der folgenden Informationen gefragt:


    WordPress-Version 5.8.4

    Aktuelles Theme: XYZ (Version 1.0)

    Aktuelles Plugin: (Version )

    PHP-Version 8.0.16


    Fehler-Details


    ==============


    Ein Fehler vom Typ E_COMPILE_ERROR wurde in der Zeile 101 der Datei /home/www/wordpress/wp-content/themes/MeineSeite/functions.php verursacht. Fehlermeldung: Array and string offset access syntax with curly braces is no longer supported.

    (Weil das Blog nur für einen privaten Kreis gedacht ist, habe ich die Angaben anonymisiert.)

    Der E_COMPILE_ERROR tritt immer beim Versuch auf, WP aufzurufen, auch im Wiederherstellungsmodus. Versuchsweise habe ich das Theme-Verzeichnis XYZ umbenannt, daraufhin erscheinen mehrere Fehlermeldungen, die mit "Cannot modify header information" beginnen.

    Mein Internetauftritt ist alt, das Theme ist alt, ich bin alt. Mir genügt es, wenn ich ein anderes Theme und damit WP wieder zum Laufen bringe. Wenn Informationen fehlen, bitte melden. Wenn das Problem schon abgehandelt wurde und ich es übersehen habe, bitte ich um den Link. Wenn jemand die Adresse des Forums haben möchte: Persönlich gerne, ich will sie nur nicht veröffentlichen.

    Ich hoffe auf Tipps hinsichtlich der Vorgehensweise, WP wieder zum Laufen zu bringen.

    Danke im Voraus und Grüße, AnselmR[PLAIN][/PLAIN]

    Einmal editiert, zuletzt von Olaf (27. Mai 2022 um 09:44)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Danke. Ich habe vergessen zu erwähnen, dass PHP 7.4.x (welche letzte Stelle genau, habe ich vergessen) konfiguriert war. Ich hielt es für möglich, dass die Version zu alt war, und habe auf 8.0.16 umgestellt. Keine Änderung.

    Mir schwant, dass ich nicht darum herumkomme, was ich vermeiden wollte: Altes WP deinstallieren, Datenbank nicht anfassen, WP neu installieren. Ich habe schon ewig kein WP mehr installiert. Vermutlich brauche ich die Werte aus der wp-config.php (Übernehmen ist vermutlich weniger ratsam), und dann sollte die Neuinstallation laufen? Plugins neu installieren?

    Aber nur ein anderes als das selbstgestrickte Theme zu verwenden, wäre mir lieber. Wo erfährt WP denn, welches Theme es verwenden soll? Könnte ich von "XYZ", das offenkundig blockiert, zu einem Standard-Theme umswitchen?

    Gruß, Anselm

  • Mit dem Zurückstellen auf PHP 7.4.x wird die aktuelle Installation wieder funktionieren.

    Neue Installationen bzw. Versuche dazu macht man am besten nicht in der aktuellen Liveinstallation sondern ausschliesslich mit neuer Datenbank auf einer Subdomain o.ä.

    Dein altes Theme kann auch an neue PHP Versionen angepasst werden, meist sind das nur ein paar kleine Änderungen, Beispiel hier:

    Code
    Use $var[$idx] instead of $var{$idx}.


    Suche Dir dazu am besten jemanden mit etwas Programmiererfahrung im direkten Umfeld, mit dem Du das zusammen ansehen kannst.

    5 Mal editiert, zuletzt von b3317133 (26. Mai 2022 um 16:32)

  • Leider bin ich schon längere Zeit aus dem Beruf, und in meinem Umfeld bin ich derjenige mit der meisten Programmiererfahrung. PHP ist allerdings nicht meine Stärke. Ich hoffe, Du wohnst bei mir um die Ecke. ;)

    Ich habe noch ein zweites WP, Standard-Theme, PHP 8.0.16, läuft problemlos. Ich schließe daraus, dass das modifizierte Theme der Bösewicht ist.

    Weitere Überlegung: Verwende ich eine frühere PHP-Version, geht das maximal gut, bis WP eine Version herausbringt, die einer höheren PHP-Version bedarf.

    Durch Ausprobieren mehrerer früherer PHP-Versionen habe ich es geschafft, beim Aufruf des WP die Fehlermeldungen und überhaupt alles zum Verschwinden zu bringen; der Bildschirm wird komplett weiß.

    Neueste Erkenntnis mittels phpinfo: Es dauert lange (erste Schätzung 10 Minuten) von einer Umstellung der PHP-Version bis zu ihrer Wirksamkeit. Bevor ich das WP teste, teste ich künftig mit phpinfo die tatsächliche Übernahme der PHP-Version.

    Ein leeres WP muss ich natürlich mit den Daten füllen. Export und Import gehen nicht, weil ich ja nicht ans Dashboard komme. Also leeres WP mit neuer Datenbank anlegen und bei einwandfreier Funktion "alte" Datenbank verbinden?

    Leider kann ich das "böse" Theme ohne Dasboard nicht wie üblich löschen. Ich bin recht sicher, dass das helfen würde.

    Ich habe einfach mal meine Überlegtungen wie sie kamen runtergeschrieben. Wenn Dir etwas dazu einfällt, gerne.

  • Puh. Operation am offenen Herzen. Um zu üben, habe ich WordPress auf einer anderen Domain neu installiert. Tägliche Datensicherungen sind bei mir selbstverständlich. Dann habe ich das original WordPress-Verzeichnis komplett gelöscht. Ich habe entgegen Anleitung auch wp-content hochgeladen, ausgenommen themes und uploads, die ich aus der alten Installation übernommen habe. Außerdem, und da haben mir meine Erfahrungen von phpBB geholfen, habe ich wp-config.php von der alten Installation übernommen. Pochenden Herzens habe ich das WP, das zuvor gar nichts mehr ausgab, gestartet. Abfrage Benutzername und Passwort - und es startete! Bei den Themes wurde ein Problem gemeldet, ich habe ein anderes gewählt, mein selbstgestricktes gelöscht, und es scheint zu funktionieren! Jetzt muss ich noch auf PHP 8 umschalten, aber ich bin zuversichtlich.

    Obwohl ich es letztlich selbst geschafft habe, vielen Dank für die Unterstützung. Schon, wenn ich jemandem ein Problem erklären kann und etwas Rückmeldung bekomme, hilft mir das ungemein.

    Danke! AnselmR

    3 Mal editiert, zuletzt von AnselmR (27. Mai 2022 um 16:41)

  • Ich habe festgestellt, dass man im Adminpanel zwischen verschiedenen PHP-Versionen umschalten kann, phpinfo zeigte aber, dass das nicht richtig ausgeführt wird. Der Hoster schrieb mir: "Ich habe den Apache in Ihrem Account soeben manuell neu gestartet, die 8.0 sollte jetzt aktiv sein." Dem ist auch so, und WP läuft brav weiter.

    Allerdings habe ich einen alten PHP-Codeschnipsel im Internetauftritt (nicht WP) laufen (zählt die aktuell verbundenen Besucher), und der bringt jetzt Fehlermeldungen. Da hat sich wohl im Befehlssatz etwas geändert. Ich habe nur rudimentäre PHP-Kenntnisse und muss nach der Ursache suchen.

    Gruß, AnselmR

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!