Was passiert, wenn du alle Plugins außer WooCommerce deaktivierst?
Dann crasht die Seite auch mit der o.a. Fehlermeldung. Gerade eben genau so nachgestellt. Das PHP Update läuft nur durch, wenn ich Woocommerce deaktiviere. 🙁
Der Fehler scheint im Zusammenhang mit Übersetzungen vorzukommen. Verwendest du ein Plugin zur Übersetzung? LocoTranslate, WPML, …? Hast du selber etwas an der Übersetzung geändert?
In der Übersetzung hat es mal einen Fehler gegeben, dass All %s
mit Alle %
übersetzt wurde und damit der Platzhalter %s
in der Übersetzung wegfällt. Das ist inzwischen korrigiert worden, aber gut möglich, dass du noch eine alte Übersetzung hast. Du könntest versuchen, in wp-content/languages/plugins/
alle Dateien mit woocommerce*
zu löschen. Verschwindet damit der Fehler?
Danke für deine Hilfe, das weiß ich sehr zu schätzen. Leider bin ich kein IT Experte. Wie lösche ich die o.a. Dateien? Brauche ich sowas wie einen FTP Client?
Oder könnte ich die evt.l fehlerhafte Übersetzung mit Loco Translate korrigieren(habe das Übersetzungs Tools bisher aber nicht im einsatz gehabt)?
-
Diese Antwort wurde geändert vor 1 Jahr, 7 Monaten von luckystrike71.
Wie lösche ich die o.a. Dateien? Brauche ich sowas wie einen FTP Client?
Ja, entweder ein FTP-Programm wie z.B. FileZilla oder du gehst im Kundenmenü deines Webhosters auf die Dateiverwaltung.
Wenn WordPress „merkt“, dass du WordPress auf Deutsch nutzt, die Übersetzungsdateien aber fehlen, werden die Dateien erneut vom Server geholt – ohne Übersetzungsfehler.
OK das Verzeichnis habe ich gefunden. Das sind etwas über 700 Dateien JSON, MO und PO Dateien. Die kann ich alle gefahrlos löschen und die Seite funktioniert danach noch?
Eine Datensicherung vor einem Löschen ist meist eine gute Idee 😉
Ja, OK. DIe Dateien habe ich lokal gesichert. Aber kann es dennoch passieren, wenn nach dem Löschen ein Fehler auftritt, dass dieser auch nach dem Zurückspielen der Dateien bleibt? Bei schwerwiegenden Problemen wäre ich dann nämlich hilflos. 😉
-
Diese Antwort wurde geändert vor 1 Jahr, 7 Monaten von luckystrike71.
Wenn du ein vernünftiges Backup hast, was soll passieren? Wenn es total schief läuft, Backup einspielen und alles ist wieder da.
Ich habe jetzt alle Dateien gelöscht und ein PHP Update auf 8.0 durchgeführt. Leider bleibt der Fehler bestehen.
Fatal error: Uncaught ValueError: Missing format specifier at end of string in /homepages/33/12345/htdocs/clickandbuilds/xyz/wp-content/plugins/woocommerce/includes/class-wc-post-types.php:234
Hab ihr vielleicht noch andere Ideen?
Nach der eigentlichen Fehlermeldung kommt noch ein „Stack Trace“ mit weiteren #9 Einträgen. Sind diese auch von Bedeutung soll ich die ganze Fehlermeldung hier nochmal posten?
Ich danke euch!
Ich habe jetzt alle Dateien gelöscht
… also im Verzeichnis wp-content/languages/plugins
die Dateien, die mit woocommerce
anfangen?
Nach der eigentlichen Fehlermeldung kommt noch ein „Stack Trace“ mit weiteren #9 Einträgen.
Eine Datei enthält einen Aufrufe einer Funktion in einer anderen Datei, die wiederum Funktionen in weiteren Dateien verwendet und irgendwo in dieser Kette ist ein Fehler aufgetreten. Um den Fehler zu beurteilen, ist es immer sinnvoll, die gesamte Fehlermeldung zu posten.
Ja, das waren insgesamt 729 Dateien. Nach dem Aktualisieren der Woocommerce Sprachdatenbank sind diese aber anscheinend alle wieder da.
Hier die komplette Fehlermeldung
Ein Fehler vom Typ E_ERROR wurde in der Zeile 234 der Datei /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-content/plugins/woocommerce/includes/class-wc-post-types.php verursacht. Fehlermeldung: Uncaught ValueError: Missing format specifier at end of string in /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-content/plugins/woocommerce/includes/class-wc-post-types.php:234
Stack trace:
#0 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-content/plugins/woocommerce/includes/class-wc-post-types.php(234): sprintf('Alle %', 'Bewertungen')
#1 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-includes/class-wp-hook.php(308): WC_Post_Types::register_taxonomies('')
#2 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array)
#3 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#4 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-settings.php(617): do_action('init')
#5 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-config.php(81): require_once('/homepages/33/d...')
#6 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-load.php(50): require_once('/homepages/33/d...')
#7 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-admin/admin.php(34): require_once('/homepages/33/d...')
#8 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-admin/index.php(10): require_once('/homepages/33/d...')
#9 {main}
thrown
@pixolin Hattest Du schon eine Möglichkeit dir das anzusehen?
0 /homepages/33/d669914016/htdocs/clickandbuilds/xyz/wp-content/plugins/woocommerce/includes/class-wc-post-types.php(234): sprintf('Alle %', 'Bewertungen')
… ist weiterhin der Fehler mit dem fehlenden s
in Alle %
.
Der Original-String heißt All %s
, wobei %s
ein Platzhalter ist – und %
nur als Text interpretiert wird. Damit passt die Funktion nicht mehr und in PHP >= 8.0 wird das als Fehler behandelt.
Ich hatte gehofft, dass durch den Austausch der inzwischen korrigierten Sprachdateien der Fehler behoben wird. Das ist scheinbar nicht der Fall. Ohne Website-Bericht komme ich an dieser Stelle nicht weiter und … gebe auf.