- 状态
- 已解决
- 报告针对
- WPML Multilingual & Multicurrency for WooCommerce 5.2.1
- 解决于
- WCML 5.3.3
- 主题标签
- Bug
问题概述
如果您使用的是 WPML Multilingual & Multicurrency for WooCommerce,在尝试更新网站上带有变体的产品时,可能会遇到 504 Gateway Time-out 错误。
临时解决方法
在继续操作之前,请确保对您的站点进行了完整备份。
- 打开 …/woocommerce-multilingual/inc/translation-editor/class-wcml-synchronize-variations-data.php 文件。
- 找到第 219 行。
- 更改:
public function get_variation_id_by_lang( $lang, $original_variation_id ) { return $this->wpdb->get_var( $this->wpdb->prepare( "SELECT post_id FROM {$this->wpdb->postmeta} AS pm JOIN {$this->wpdb->prefix}icl_translations AS tr ON tr.element_id = pm.post_id WHERE tr.element_type = 'post_product_variation' AND tr.language_code = %s AND pm.meta_key = '_wcml_duplicate_of_variation' AND pm.meta_value = %d", $lang, $original_variation_id ) ); } - 替换为:
public function get_variation_id_by_lang( $lang, $original_variation_id ) { return apply_filters( 'wpml_object_id', $original_variation_id, 'product_variation', false, $lang ); }