Error bei den Widgets

  • Hallo Ihr Lieben,

    eben wollte ich einen Text in einem Textwidget ändern und ging also zu den Widgets. Was neulich noch in Ordnung war, ist es nun nicht mehr. Als ich auf die Seite kam zeigte die Seite mir folgenden Fehler:
    http://www.gfx-hoster.de/bild/28723/errorIKGKO.jpg

    Ich habe nun versucht, von einem Backup aus den letzten Monaten die widget.php hochzuladen. Erst habe ich die jetzige gelöscht und dann die ältere hochgeladen. Zu dem Zeitpunkt wo das Backup gemacht wurde, funktionierte das. Es zeigte sich aber keine Änderung. Nur wieder dieser Fehler.

    Inzwischen habe ich es wieder rückgängig gemacht, da ich mir die gelöschte widget.php gesichert hatte.

    Aber was nun? Ich habe nichts bei den Widgets geändert und was bedeutet dieser Fehler? Was kann ich tun, damit das wieder verschwindet?

    Hat jemand eine Ahnung und bin ich hier überhaupt in der richtigen Abteilung des Forums?

    Ich bitte um Hilfe. :-(

    • 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

  • Erste Regel bei Fehlermeldungen: Abtippen und in Google danach suchen. Das führt zielstrebig zu diesen Infos:
    http://www.bigroom.co.uk/blog/php-nesti…sive-dependency

    Kann es sein, dass Dein Provider Dein Package auf PHP 5.2 aktualisiert hat? Als Workaround fürs erste solltest Du an der angegebenenStelle in der Datei mal schauen, ob da ein "==" steht, das Du durch ein "===" ersetzen könntest. Ich will ja mal hoffen, dass das in 2.9 behoben wird.

  • Danke für Deine Antwort!

    Ich habe bei meinem Confixx mal nachgeschaut bei den Servermeldungen. Dort steht "Webalizer Statistiken aktiviert." Und zwar heute nachmittag. Kann das etwas damit zu tun haben?

    Auch war ich auf der Seite, die Du mir als Link gegeben hast. Ich wollte das dann auch so ändern wie Du gemeint hast, aber in meiner widget.php gibt es so etwas nicht. Auch komischerweise diese Fehlermeldung, die gezeigt wird ist darin nicht enthalten.

    echo ( $a == $c ); // Fatal error:
    Nesting level too deep - recursive dependency?

    Oder kann es etwas damit zu tun haben, daß ich gestern ein Plugin (wp-downloadcounter.1.1) installiert habe?

    Ach ja: ich würde gerne diese Line 897 ändern, aber wie komme ich zu dieser? Muß ich jetzt alle Zeilen zählen? Sorry, für diese wahrscheinlich dumme Frage.

    Einmal editiert, zuletzt von lupadgds (15. Dezember 2009 um 19:54)

  • Zitat

    Ich habe bei meinem Confixx mal nachgeschaut bei den Servermeldungen. Dort steht "Webalizer Statistiken aktiviert." Und zwar heute nachmittag. Kann das etwas damit zu tun haben?

    Würde ich nicht vermuten, aber mit Sicherheit kann man es natürlich nicht sagen. Hast Du die PHP-Version da irgendwo gefunden? Gibt es eine phpinfo-Seite oder so?


    Zitat

    Auch war ich auf der Seite, die Du mir als Link gegeben hast. Ich wollte das dann auch so ändern wie Du gemeint hast, aber in meiner widget.php gibt es so etwas nicht.

    Doch, es sei denn Du verwendest eine andere WP-Version. In 2.8.6 sieht Zeile 897 der Datei so aus:

    PHP
    if ( ( $callback && isset($wp_registered_widgets[$widget]['callback']) && $wp_registered_widgets[$widget]['callback'] == $callback ) || ( $id_base && _get_widget_id_base($widget) == $id_base ) ) {

    Wenn ich den Fehler jetzt richtig verstehe, könnte es helfen, das so zu ändern:

    PHP
    if ( ( $callback && isset($wp_registered_widgets[$widget]['callback']) && $wp_registered_widgets[$widget]['callback'] === $callback ) || ( $id_base && _get_widget_id_base($widget) === $id_base ) ) {

    Habe ich aber nicht getestet, ist nur eine Vermutung basierend auf oben ergoogelten Informationen. Da ich dazu aktuell nichts im Trac finde, bin ich auch nicht sicher, ob das wirklich ein WP-Problem ist. Vielleicht tritt das auch nur auf mit Widgets, die speziell kompliziert sind?!


    Zitat

    Auch komischerweise diese Fehlermeldung, die gezeigt wird ist darin nicht enthalten.

    Warum sollte sie auch, es ist ja ein PHP-Fehler. Der wird von PHP generiert und ausgegeben, weil es einen Fehler im Programm gefunden hat.


    Zitat

    Oder kann es etwas damit zu tun haben, daß ich gestern ein Plugin (wp-downloadcounter.1.1) installiert habe?

    Könntest Du ja sehr leicht selber überprüfen. ;-) Da der Fehler aber in einer Core-Datei auftritt, würde ich eher nicht drauf tippen. Kann natürlich sein, dass das Widget, welches den Fehler auslöst, aus dem Plugin stammt.


    Zitat

    Ach ja: ich würde gerne diese Line 897 ändern, aber wie komme ich zu dieser? Muß ich jetzt alle Zeilen zählen?

    Jeder gute Editor bietet Dir eine Anzeige der Zeilennummern. Eigentlich alle schlechten, die ich kenne, auch. Du musst ggf. die Anzeige der Statusleiste aktivieren. ;-)

  • Vielen Dank, Das waren jetzt viele Infos. Ich war bis eben arbeiten, ich werde mich später einmal daran machen, so einiges abzuarbeiten, was Du geschrieben hast. Ich hoffe, irgendetwas wird helfen.

    Aber auf jeden Fall werde ich berichten. :smile:


    Ich konnte es mir doch nicht verkneifen, gleich anzufangen. Ich bin sprachlos! Was so ein kleines Zeichen (=) doch ausmacht! Es hat geklappt, meine Seite zeigt sich wieder ohne Fehler an! Ich habe einfach noch ein = dazugemacht, wie Du weiter oben gesagt hattest.

    Vielen, vielen Dank! Ich kann nur sagen, daß ich hier sehr gut aufgehoben bin bei Euch! Egal was, es wird einem immer klasse geholfen! Danke!

    Einmal editiert, zuletzt von lupadgds (16. Dezember 2009 um 14:56)

  • Du musst dann leider nach dem Update auf 2.9 schauen, ob Du das dort wieder beheben musst. Falls ja, sag doch bitte hier noch mal Bescheid. Dann schaue ich mal, dass über Trac auch den Entwicklern Bescheid gesagt wird.

  • So, wie versprochen, melde ich mich heute wieder. Ich habe heute auf 2.9.1 upgedated und mußte diesen Fehler wieder beheben.

    Danke nochmal für die Hilfe im Dezember!

    :D

  • Tja, also ich habe es auf der wp-hackers-Liste angesprochen, aber da war der Konsens, dass der Fehler an dieser Stelle eigentlich nicht auftreten kann, weil dort immer Strings oder String-Arrays verglichen werden sollten. Ich denke, da komme ich nur weiter, wenn ich das etwas konkreter angeben kann. Kannst Du mir vielleicht eine Liste all Deiner Plugins schicken? Den Download-Counter habe ich schon probiert, der hat nicht mal ein Widget dabei.

    Falls Du magst könntest Du auch mal testen alle Plugins zu deaktivieren und zu schauen, ob dann der Fehler immer noch auftritt (ohne den ===-Fix natürlich), vielleicht im Rahmen des nächsten Updates (2.9.2 oder später bei 3.0). Falls ja, stimmt mit Deinem WP irgendwas nicht, würde ich vermuten, oder es stecken in der DB noch irgendwelche alten, kaputten Widgets.

Jetzt mitmachen!

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