- Stato
- Risolto dall’autore
- Plugin/tema correlato
- Germanized for WooCommerce
- Tag dell’argomento
- Compatibility, WCML
Panoramica del problema
Nelle configurazioni con Germanized for WooCommerce e WPML, si verifica un problema per cui i metodi di spedizione che utilizzano le condizioni delle Classi di spedizione non sono disponibili per i prodotti tradotti.
Soluzione alternativa
Assicurati di avere un backup completo del tuo sito prima di procedere.
- Apri il file …/wp-content/plugins/woocommerce-germanized/packages/woocommerce-germanized-shipments/src/ShippingMethod/ShippingMethod.php.
- Cerca la riga 957.
- Sostituisci:
$classes = isset( $condition['classes'] ) && ! empty( $condition['classes'] ) ? array_map( 'absint', (array) $condition['classes'] ) : array();
- Con:
$classes = isset( $condition['classes'] ) && ! empty( $condition['classes'] ) ? array_map( 'absint', (array) $condition['classes'] ) : array(); // compsupp-7583 workaround // Assuming $classes is an array of category IDs. $classes = array_map(function($class_id) { // Translate each ID using WPML return apply_filters('wpml_object_id', $class_id, 'category'); }, $classes);