Zum Inhalt springen Zur Seitenleiste springen

Dies ist das technische Support-Forum für WPML – das mehrsprachige WordPress-Plugin.

Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.

Sun Mon Tue Wed Thu Fri Sat
- 8:00 – 13:00 9:00 – 13:00 9:00 – 13:00 8:00 – 12:00 8:00 – 12:00 -
- 14:00 – 17:00 14:00 – 18:00 14:00 – 18:00 13:00 – 17:00 13:00 – 17:00 -

Supporter-Zeitzone: Europe/Zagreb (GMT+01:00)

Schlagwörter: 

Dieses Thema enthält 3 Antworten, hat 0 Stimmen.

Zuletzt aktualisiert von Bruno Kos Vor 2 Wochen, 3 Tage.

Assistiert von: Bruno Kos.

Autor Beiträge
Januar 6, 2026 um 8:11 p.m. #17707823

alexanderG-59

Ich möchte eine Bestellung rückerstatten, leider schlägt der Prozess mit folgendem Fehler fehl

[06-Jan-2026 20:02:57 UTC] PHP Fatal error: Uncaught Error: Call to a member function get_meta() on false in wp-content/plugins/woocommerce-multilingual/classes/OrderItems/LineItem/Variation.php:48
Stack trace:
#0 wp-content/plugins/woocommerce-multilingual/classes/OrderItems/LineItem/Variation.php(29): WCML\OrderItems\LineItem\Variation->update_attribute_item_meta_value(Object(WC_Order_Item_Product), 60604)
#1 wp-content/plugins/woocommerce-multilingual/classes/OrderItems/Hooks.php(173): WCML\OrderItems\LineItem\Variation->translateItem(Object(WC_Order_Item_Product), 'de')
#2 wp-content/plugins/woocommerce-multilingual/classes/OrderItems/Hooks.php(157): WCML\OrderItems\Hooks->translateLineItem(Object(WC_Order_Item_Product), 'de')
#3 wp-content/plugins/woocommerce-multilingual/classes/OrderItems/Hooks.php(75): WCML\OrderItems\Hooks->translateOrderItems(Array, 'de')
#4 wp-includes/class-wp-hook.php(343): WCML\OrderItems\Hooks->getOrderItems(Array, Object(WC_Order_Refund))
#5 wp-includes/plugin.php(205): WP_Hook->apply_filters(Array, Array)
#6 wp-content/plugins/woocommerce/includes/abstracts/abstract-wc-order.php(932): apply_filters('woocommerce_ord...', Array, Object(WC_Order_Refund), Array)
#7 wp-content/plugins/woocommerce/includes/abstracts/abstract-wc-order.php(1874): WC_Abstract_Order->get_items(Array)
#8 wp-content/plugins/woocommerce/includes/wc-order-functions.php(649): WC_Abstract_Order->update_taxes()
#9 wp-content/plugins/woocommerce/includes/class-wc-ajax.php(2248): wc_create_refund(Array)
#10 wp-includes/class-wp-hook.php(341): WC_AJAX::refund_line_items('')
#11 wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters('', Array)
#12 wp-includes/plugin.php(522): WP_Hook->do_action(Array)
#13 wp-admin/admin-ajax.php(192): do_action('wp_ajax_woocomm...')
#14 {main}
thrown in wp-content/plugins/woocommerce-multilingual/classes/OrderItems/LineItem/Variation.php on line 48

mein quickfix, der mir geholfen hat die bestellung rückzuerstatten, aber keine ahnung ob das eine dauerlösung ist:
private function update_attribute_item_meta_value( $item, $variationId ) {
foreach ( $item->get_meta_data() as $meta_data ) {
$data = $meta_data->get_data();
$attributeExists = metadata_exists( 'post', $variationId, 'attribute_' . $data['key'] );
if ( $attributeExists ) {
$attributeValue = get_post_meta( $variationId, 'attribute_' . $data['key'], true );

if ( '' === $attributeValue ) {
$productId = $item->get_product_id();
$options = $this->get_attribute_options( $productId, $data['key'] );

// SICHERHEITSPRÜFUNG START
$order = $item->get_order();
if ( ! $order ) {
continue; // Wenn keine Bestellung gefunden, überspringe dieses Meta-Datum
}

Januar 7, 2026 um 7:38 a.m. #17708316

Bruno Kos
WPML-Unterstützer seit 12/2018

Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français )

Zeitzone: Europe/Zagreb (GMT+01:00)

Hallo,

Können Sie mir bitte die Debug-Informationen zur Verfügung stellen?

https://wpml.org/faq/provide-debug-information-faster-support/

Fügen Sie dies dem Feld Fehlerbehebungsinfos hinzu.

Könnten Sie bitte kurz prüfen, ob nach der Bestellung eine der Produktvarianten gelöscht wurde?

Bevor Sie die Rückerstattung erneut versuchen, gehen Sie bitte zu
WooCommerce → WCML → Status -> Troubleshooting
und führen Sie dort die folgenden Aktionen aus:

* Synchronize product variations
* Synchronize stock for products and product variations
* Fix incorrect or missing translation links for product variations
* Remove unused custom fields from product and variation translations

Versuchen Sie danach bitte erneut, die Rückerstattung durchzuführen, und geben Sie uns kurz Bescheid, ob es funktioniert oder ob der Fehler weiterhin auftritt.

Clipboard_01-07-2026_01.jpg
Januar 8, 2026 um 9:23 p.m. #17714468

alexanderG-59

Hi,

es wurde zwischen der Bestellung und der Stornierung nichts geändert. Die Stornierung ist bereits etwa 3-4 Stunden nach der Bestellung erfolgt.

Ich kann das auch nicht reproduzieren, da ich die Stornierung mittels meinen "Hacks" (siehe oben) habe durchführen können.

Das hier habe ich durchgeführt:
* Synchronize product variations
=> 0 Elemente

* Synchronize stock for products and product variations
=> 1683 Elemente verarbeitet

* Fix incorrect or missing translation links for product variations
=> 3 Elemente

* Remove unused custom fields from product and variation translations
=> 133 Elemente verarbeitet

Januar 9, 2026 um 10:51 a.m. #17715580

Bruno Kos
WPML-Unterstützer seit 12/2018

Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français )

Zeitzone: Europe/Zagreb (GMT+01:00)

Könnten Sie bitte prüfen, ob sich das Problem in irgendeiner Form erneut reproduzieren lässt, zum Beispiel durch das Anlegen einer neuen Testbestellung und einen anschließenden Rückerstattungsversuch?

Falls der Fehler nicht mehr auftritt, würde dies darauf hindeuten, dass es sich um eine temporäre Dateninkonsistenz gehandelt hat, die inzwischen behoben ist. Geben Sie uns bitte kurz Bescheid, ob dieses Vorgehen für Sie so sinnvoll ist.

Das Thema '[Geschlossen] PHP Fatal error' ist für neue Antworten geschlossen.