Sauter la navigation

Ce sujet est résolu. Voici une description du problème et de la solution.

Problème :
Vous utilisez des 'Loop Grid' de Elementor avec le widget de filtre de Elementor sur des pages en français, créées avec Jetengine. Après avoir activé la fonction AJAX de WPML, qui crée un cookie avec la langue d'affichage, l'utilisation des filtres recharge les éléments en anglais.
Solution :
Nous vous recommandons d'ajouter le snippet suivant à votre thème pour forcer le rechargement AJAX à respecter la langue sélectionnée :

add_action('rest_api_init', function() {
    if (isset($_COOKIE['wp-wpml_current_language'])) {
        $lang = sanitize_text_field($_COOKIE['wp-wpml_current_language']);
        do_action('wpml_switch_language', $lang);
    }
});

De plus, vérifiez si votre problème est similaire à ces cas connus, qui pourraient vous offrir d'autres pistes de solution :

Si cette solution ne s'applique pas à votre cas ou semble obsolète, nous vous recommandons de vérifier les problèmes connus, de vérifier la version du correctif permanent et de confirmer que vous avez installé les dernières versions des thèmes et plugins. Si le problème persiste, n'hésitez pas à ouvrir un nouveau ticket de support sur notre forum de support.

Il s'agit du forum d'assistance technique de WPML, le plug-in multilingue pour WordPress.

Il est accessible à tous, toutefois seuls les clients de WPML peuvent y publier leurs messages. L'équipe du WPML répond sur le forum 6 jours par semaine, 22 heures par jour.

Marqué : 

Ce sujet contient 2 réponses, a 0 voix.

Dernière mise à jour par mathieuF-14 Il y a 6 jours et 11 heures.

Assisté par: Bruno Kos.

Auteur Articles
février 6, 2025 à 9:21 pm #16677374

mathieuF-14

Background of the issue:
J'ai des pages qui utilisent des 'Loop Grid' de Elementor avec le widget de filtre de Elementor. Lorsque la page est chargée, les éléments sont en français. J'utilise Jetengine pour créer les types de posts, les catégories et les étiquettes. J'ai activé la fonction de WPML pour AJAX qui crée un cookie avec la langue d'affichage. Le thème est le thème Hello de base de Elementor.

Symptoms:
Toute utilisation des filtres recharge les éléments en anglais, même si tout fonctionne correctement en anglais.

Questions:
Comment puis-je régler le problème de langue lors d'un rechargement AJAX avec les filtres Elementor?

février 7, 2025 à 9:04 am #16678362

Bruno Kos
Supporter

Les langues: Anglais (English ) Allemand (Deutsch ) Français (Français )

Fuseau horaire: Europe/Zagreb (GMT+01:00)

Bonjour,

Avec la Loop Grid, nous avons eu plusieurs cas récemment, je ne suis pas sûr à 100% qu'il s'agisse du vôtre.

Cela étant dit, pouvez-vous vérifier ces cas et essayer?
https://wpml.org/errata/elementor-pro-loop-grid-alternate-templates-non-dynamic-content-is-not-translated/
https://wpml.org/de/forums/topic/mehrsprachige-blog-beitraege-mit-kategorien/page/2/#post-15986884
https://wpml.org/errata/elementor-pro-taxonomy-filter-feature-not-working-for-secondary-language/

Il s'agit de 3 cas différents mais similaires et peut-être liés.

février 7, 2025 à 3:01 pm #16680332

mathieuF-14

Il semble qu'ajouter ce snippet ait réglé le problème. Merci!

<?php
add_action('rest_api_init', function() {
if (isset($_COOKIE['wp-wpml_current_language'])) {
$lang = sanitize_text_field($_COOKIE['wp-wpml_current_language']);
do_action('wpml_switch_language', $lang);
}
});

février 7, 2025 à 3:03 pm #16680337

mathieuF-14

Merci de l'info qui m'a lancé sur d'autres pistes.