WPML
Statut
Résolu
Signalé pour
WPML Multilingual CMS 3.6.3
Résolu dans
3.7.0

Aperçu de l’anomalie

Pour résoudre certains problèmes avec les extensions de cache, nous ne définissons plus le cookie de langue sur l’interface publique lorsque l’utilisateur n’est pas connecté. Cela entraîne des problèmes avec certains thèmes et extensions qui effectuent des appels AJAX sur l’interface publique.

Solution de contournement

Le problème a été résolu dans WPML 3.7.0.

Pour activer les informations de langue dans les appels AJAX sur le front-end, allez dans WPML > Langues puis faites défiler vers le bas jusqu’à voir « Filtrage de la langue pour les opérations AJAX ».

Vous y trouverez l’option « Stocker un cookie de langue pour prendre en charge le filtrage de langue pour AJAX » :


Ce qui suit est la solution de contournement pour WPML 3.6.3 :

Si vous rencontrez ce problème et que vous n’utilisez aucune extension de cache, vous pouvez utiliser la solution de contournement suivante :


  1. Modifiez le fichier sitepress-multilingual-cms/classes/utilities/class-wpml-cookie.php.

  2. Modifiez la fonction set_cookie

de :
public function set_cookie( $name, $value, $expires, $path, $domain ) {
   if ( $this->should_set_cookie() ) {
      setcookie( $name, $value, $expires, $path, $domain );
   }
}

À :

public function set_cookie( $name, $value, $expires, $path, $domain ) {
   setcookie( $name, $value, $expires, $path, $domain );
}

Toutes les anomalies connues →