WP "vergisst" Theme

  • Hallo allerseits,

    seit einiger Zeit benutze ich in meinem Blog Jan kann Bahn fahrn ein Theme, das mir ein Freund erstellt hat. Leider "vergisst" WordPress von Zeit zu Zeit, dass ich dieses Theme eingestellt habe. Es ist dann sogar in der Datenbank wieder "default" eingetragen, ohne dass ich das Blog auch nur besucht, geschweige denn irgendwelche Einstellungen geändert hätte.
    Habt ihr eine Idee, woran das liegen kann bzw. kennt das Problem sogar?

    Viele Grüße,

    JanZ

    • 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

  • Also von solch einer Problematik habe ich ja nie etwas gehört. Ich weiß nicht, wenn gespeicherte Einstellungen - das wäre ja definitiv auch eine - verschwinden, hätte ich ernsthafte Bedenken, ob da nicht ggf. eine dritte Person beteiligt sein könnte. Ich denke da an eine freundliche Hackeraktion. Paranoid bin ich aber nicht. Nur zur allgemeinen Feststellung.

    Gepeichert ist aus meiner Sicht gespeichert. Unwahrscheinlich, dass sich die Datenbank verselbständigt. Gibt es noch andere Einstellungen, die automatisch auf "default" gesetzt werden?

  • Das kann schon passieren, weil Wordpress beim Start mit validate_current_theme überprüft, ob das aktuelle eingestellte Theme existiert und falls nicht, es wieder auf default zurückstellt.

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Das beruhigt mich schon mal - aber kennt jemand auch eine Lösung? Ich habe ein bisschen hier im Forum gesucht, aber nix gefunden.

    Gruß JanZ

  • Das kann schon passieren, weil Wordpress beim Start mit validate_current_theme überprüft, ob das aktuelle eingestellte Theme existiert und falls nicht, es wieder auf default zurückstellt.

    Gruß
    Ingo

    Wo genau finde ich denn diese Funktion? Es wäre ja schon mal ein Anhaltspunkt, wenn ich überprüfen könnte, was in diesem Schritt eigentlich passiert. Das Problem besteht nämlich leider auch in Version 2.3.1 immer noch.

    Gruß JanZ

  • Wo genau finde ich denn diese Funktion?


    Besorg dir einen Texteditor der mehrere Dateien durchsuchen kann (z.B. Notepad++ oder Proton) - dann kannst du einfach den Funktionsnamen eingeben und siehst dann die Datei...

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • So, wenn ich das richtig sehe, befindet sich die Funktion validate_current_theme in der theme.php . Ich habe sie mal auskommentiert; leider besteht das Problem aber trotz dieser recht brachialen Methode immer noch! Hat jemand eine Idee, warum? Ich könnte noch brachialer versuchen, mein Theme zum Default zu erklären und alle anderen zu löschen, aber ich weiß nicht, ob das nicht irgendwelche anderen Konsequenzen hat, die ich jetzt nicht überblicke.

    Gruß JanZ

  • Ich habe gerade zufällig was gefunden:
    #3907 (WP reverts to default theme on file access collision) - WordPress Trac - Trac

    Zitat

    There is still no fix addressed to the problem on heavily accessed systems where the theme can revert back to default.

    This apparently happens if the "file_exists" test in theme.php fails under any of a few different functions? PHP manual shows that "file_exists" can fail if a theme file is being replaced at the time or certain conditions occur under php safe mode.

    One way to reproduce this bug consistently is to upload "style.css" repeatedly while a site is active.

    I'd like to suggest that "file_exists" be replaced with a custom function that does at least a few retries over an adjustable time (a second or so) before completely giving up and reverting.

    In WP 2.4 ist das dann vielleicht gefixed. Ansosnten findest du im verlinkten Ticket auch die entsprechenden Änderungen, falls du dich traust ;)

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • Hallo jottlieb,

    es beruhigt mich, dass ich anscheinend nicht der einzige mit diesem Problem bin. Allerdings hatte ich, wie gesagt, den Aufruf von validate_current_theme in der wp_settings.php bereits auskommentiert. Trotzdem trat der Fehler immer wieder auf, was mich natürlich extrem stutzig macht.
    Ich habe jetzt wirklich "mein" Theme in "default" umbenannt, so dass nun eigentlich kein anderes Theme mehr eingestellt werden kann. So ganz wohl ist mir mit dieser Lösung natürlich nicht. Kennt jemand deren Nachteile und/oder hat eine bessere Idee?

    Gruß JanZ

  • Kennt jemand deren Nachteile und/oder hat eine bessere Idee?


    Ging mir genau so. Eine bessere Lösung, als das Haupttheme in "default" umzubennenen, habe ich bisher auch nicht gefunden. Aber wenn man nicht ständig ein anderes Theme switchen will, dann kommt man ja wunderbar mit dem einen aus. Echte Nachteile sind mir nicht aufgefallen. Kurzzeitig switchen kann man ja immer noch, etwa zu Testzwecken.

Jetzt mitmachen!

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