- Statut
- Résolu
- Signalé pour
- WPML Multilingual & Multicurrency for WooCommerce 4.0.4
- Résolu dans
- WPML Multilingual & Multicurrency for WooCommerce 4.1.0
Aperçu de l’anomalie
Si vous utilisez une ancienne version de WPML — par exemple 3.4.0 — et que vous mettez à jour WPML Multilingual & Multidevise pour WooCommerce de la version 4.0.3 à la version 4.0.4, vous pourriez rencontrer une erreur fatale similaire à la suivante :
"PHP Fatal error: Call to undefined method WPML_WP_API::is_comments_post_page() in /wp-content/plugins/woocommerce-multilingual/inc/wcml-switch-lang-request.php on line 136"
Solution de contournement
Il existe deux façons de résoudre ce problème :
1. Mettez à jour WPML vers la dernière version – c’est la méthode recommandée, la plus rapide et la plus sûre.
2. Utilisez le code suivant pour corriger et remplacer la fonction get_requested_lang() dans le fichier /woocommerce-multilingual/inc/wcml-switch-lang-request.php.
public function get_requested_lang() {
return $this->is_comments_post_page() ? $this->get_cookie_lang() : $this->get_request_uri_lang();
}
public function is_comments_post_page() {
global $pagenow;
return 'wp-comments-post.php' === $pagenow;
}