WPML

Übersicht über das Problem

Beim Senden einer E-Mail aus YITH Affiliate, YITH Giftcards, WCFM-Plugins und möglicherweise einigen anderen kann ein Fehler wie dieser auftreten:

PHP Fatal error:  Uncaught Error: Call to a member function get_id() on array in /public_html/wp-content/plugins/woocommerce-multilingual/inc/class-wcml-emails.php:395

Problemumgehung

Dieses Problem ist in WooCommerce Multilingual 4.9.0-b1 behoben. Ein Update behebt dies auf Ihrer Website, daher benötigen Sie diese Problemumgehung nur, wenn Sie noch nicht aktualisieren können.

Unsere Entwickler arbeiten an der Behebung dieses Problems.
Als temporäre Problemumgehung, und nur, nachdem Sie sichergestellt haben, dass Sie ein vollständiges Backup Ihrer Website haben, können Sie zu wp-content/plugins/woocommerce-multilingual/inc/class-wcml-emails.php gehen und den Code von:

public function get_email_translated_string( $key,
		$object, $language)
	{

	$context = 'admin_texts_woocommerce_' . $object->id . '_settings';
	$name    = '[woocommerce_' . $object->id . '_settings]' . $key;

	return $this->wcml_get_translated_email_string( $context, $name, $object->object->get_id(), $language );

in diesen Code ändern:

public function get_email_translated_string( $key, $object, $language ) {
    $context = 'admin_texts_woocommerce_' . $object->id . '_settings';
    $name = '[woocommerce_' . $object->id . '_settings]' . $key;

    $order_id = false;

    if ( method_exists( $object->object, 'get_id' ) ) {
        $order_id = $object->object->get_id();
    }

    if ( is_array( $object->object ) && isset( $object->object['ID'] ) ) {
        $order_id = $object->object['ID'];
    }

    return $this->wcml_get_translated_email_string( $context, $name, $order_id, $language );
}

Alle bekannten Probleme

Tritt dieses Problem weiterhin auf?

Wenn das Update das Problem nicht behebt, stellen Sie eine Support-Anfrage und wir sehen uns das gemeinsam mit Ihnen an.