Visão geral do problema
Se você estiver usando o WPML Multilíngue & Multimoeda para WooCommerce, você pode encontrar um erro 504 Gateway Time-out ao tentar atualizar produtos com variações no seu site.
Solução alternativa
Este problema foi corrigido em WCML 5.3.3. Atualizar resolve isso no seu site, então você só precisa desta solução alternativa se ainda não puder atualizar.
Certifique-se de ter um backup completo do seu site antes de prosseguir.
- Abra o arquivo …/woocommerce-multilingual/inc/translation-editor/class-wcml-synchronize-variations-data.php.
- Procure a linha 219.
- Altere:
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 ) ); } - Para:
public function get_variation_id_by_lang( $lang, $original_variation_id ) { return apply_filters( 'wpml_object_id', $original_variation_id, 'product_variation', false, $lang ); }