WPML
Estado
Resuelto
Notificado para
WPML Multilingual & Multicurrency for WooCommerce 5.5.2.1
Resuelto en
WooCommerce Multilingual & Multicurrency 5.5.2.2
Etiquetas de temática
WCML

Resumen del problema

En WPML Multilingual & Multicurrency for WooCommerce, puede ocurrir que al traducir un producto variable, la variación predeterminada en el segundo idioma falte o se establezca incorrectamente en 0.

Esto ocurre cuando los valores term_id y term_taxonomy_id difieren, lo que puede suceder con los atributos globales del producto.

Solución alternativa

Por favor, asegúrese de tener una copia de seguridad completa de su sitio antes de continuar.


  • Abra el archivo …/woocommerce-multilingual/classes/Synchronization/Component/Attributes.php.

  • Busque la línea 137.

  • Reemplace:
    $defaultTermIdTranslations = $this->elementTranslations->get_element_translations( $defaultTermId, false, true );


  • Por:
    $defaultTermIdTranslations = [];


  • En el mismo archivo, busque la línea 149 y reemplace:
    $translatedDefaultTermId = $this->elementTranslations->element_id_in( $defaultTermId, $language );


  • Por:
    $translatedDefaultTermId = apply_filters( 'wpml_object_id', $defaultTermId, $sanitizedAttributeName, false, $language );


  • Después de aplicar estos cambios, debe guardar o actualizar manualmente los productos con este problema.

Todos los problemas conocidos →