WPML

Übersicht über das Problem

Wenn Sie das Woodmart-Theme in Verbindung mit WPML verwenden, kann ein Problem auftreten, bei dem die Übersetzung eines Produkt-Layouts hängen bleibt und nicht abgeschlossen wird. Außerdem wird ein ähnlicher Fehler angezeigt:

Call to a member function get_gallery_image_ids() on null .../wp-content/themes/woodmart/woocommerce/single-product/product-image.php:27

Aktuelle Dokumentation: Die Produkt-Layouts von WoodMart lassen sich mit WPML übersetzen. Lesen Sie, wie das geht, unter Einen WoodMart-Shop mit WPML übersetzen.

Problemumgehung

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

Bitte stellen Sie sicher, dass Sie über ein vollständiges Backup Ihrer Website verfügen, bevor Sie fortfahren.

  • Öffnen Sie die Datei functions.php Ihres Themes.
  • Fügen Sie das folgende Snippet hinzu:
    add_action( 'woocommerce_before_template_part', function () {
        global $product;
    
        if ( wp_is_json_request() && ! $product ) {
            $random_product = new WP_Query(
                array(
                    'posts_per_page' => '1',
                    'post_type'      => 'product',
                )
            );
    
            while ( $random_product->have_posts() ) {
                $random_product->the_post();
                $product_id = get_the_ID();
            }
    
            wp_reset_postdata();
    
            $product = wc_get_product( $product_id );
        }
    } );
  • Leeren Sie Ihren Cache und übersetzen Sie Ihr Produkt-Layout erneut.
Update: Das WoodMart-Team hat ebenfalls einen Patch bereitgestellt, und der Fehler sollte im nächsten Update behoben sein.
  • Gehen Sie zu WordPress-DashboardWoodMartPatcher.
  • Wählen Sie den Patch Nummer 618307 aus.

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.