- Statut
- Résolu
- Signalé pour
- WPML Multilingual & Multicurrency for WooCommerce 5.2.0
- Résolu dans
- WCML 5.3.0
- Étiquettes de sujet
- Compatibility
Aperçu de l’anomalie
Dans les situations où vous avez créé un modèle Divi à afficher pour Toutes les pages d’archives, et que vous avez également un fichier taxonomy-product_cat.php dans votre thème, un conflit se produira. Plus précisément, votre modèle Divi ne s’affichera que dans la langue par défaut. Chaque fois que vous changez de langue, le modèle du fichier taxonomy-product_cat.php s’affichera à la place du modèle Divi.
Solution de contournement
Veuillez vous assurer d’avoir une sauvegarde complète de votre site avant de continuer.
- Ouvrez le fichier functions.php de votre thème.
- Ajoutez le code suivant :
add_filter('template_include', function ($template){ if (function_exists('wc_locate_template') && strpos($template, 'Divi/includes/builder') !== false && !file_exists(wc_locate_template(basename($template)))) { global $woocommerce_wpml; remove_filter( 'template_include', [ $woocommerce_wpml->store, 'template_loader' ], 100 ); } return $template; }, 99);
Remarque
Ce problème peut également se produire avec les modèles Elementor. Dans ce cas, vous devrez utiliser cet extrait de code à la place :
add_filter('template_include', function ($template){
if (function_exists('wc_locate_template') && strpos($template, 'elementor') !== false && !file_exists(wc_locate_template(basename($template)))) {
global $woocommerce_wpml;
remove_filter( 'template_include', [ $woocommerce_wpml->store, 'template_loader' ], 100 );
}
return $template;
}, 12);