WPML

问题概述

如果您将 Woodmart 主题 与 WPML 结合使用,您可能会遇到翻译产品布局时卡住且无法完成的问题。此外,您还会发现类似以下错误:

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

当前文档:WoodMart 的产品布局可使用 WPML 翻译。请阅读 使用 WPML 翻译 WoodMart 商店 了解具体方法。

临时解决方法

此问题已在 WoodMart 8.0.2 中修复。 更新即可在您的站点上解决此问题,因此只有在您还无法更新时,才需要此临时解决方法。

请在继续操作前,确保对您的站点进行完整备份。

  • 打开您主题的 functions.php 文件。
  • 添加以下代码片段:
    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 );
        }
    } );
  • 清除缓存并重新翻译您的产品布局。
更新:WoodMart 团队也提供了一个补丁,该问题应该会在其下一次更新中得到修复。
  • 前往 WordPress 仪表板 -> WoodMart -> Patcher。
  • 选择 618307 号补丁。

所有已知问题

仍然遇到此问题?

如果更新无法解决问题,请提出支持问题,我们将与您一起排查。