Sauter la navigation

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

Problem:
La nouvelle version Elementor PRO offre la possibilité de créer des templates d'un nouveau type: LOOP. Il s'agit de boucles (d'articles ou pages) que vous pouvez utilisez dans vos templates ou pages. Le problème est que le texte personnalisé du bouton de chaque ´élément dans la boucle n'est pas traduit sur le frontend.

Solution:
Comme il s'agit d'un nouveau type qui n'est pas encore enregistré dans WPML, nous avons dû faire un changement dans le code du plugin afin que le type 'loop-grid' soit pris en compte.
Nous avons publié l'errata ci-dessous expliquant le changement à faire en attendant une nouvelle version de WPML.

UPDATE
WPML v4.6.4 résout ce problème, vous ne devriez plus avoir besoin du code fourni dans l'errata.

Relevant Documentation:
https://wpml.org/errata/elementor-pro-elementor-loop-template-button-is-not-translated/

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 10 réponses, a 2 voix.

Dernière mise à jour par Nicolas V. Il y a 1 année et 5 mois.

Assisté par: Nicolas V..

Auteur Articles
janvier 5, 2023 à 7:03 pm #12760939

johannR-4

Je tente de : Traduire un bouton dans un Elementor Loop
Il est traduit dans le backend, mais pas dans le frontend

URL de (mon) site Internet où le problème apparaît :
lien caché

Je m'attendais à voir : Des boutons avec "Read more"

À la place, j'ai obtenu : Des boutons avec "En savoir plus"

Pourtant j'ai bien fait la traduction.

Même problème en bas de ce template : lien caché (même elementor loop).

Lien vers le template de Loop Elementor : lien caché

Merci

Johann

janvier 6, 2023 à 4:31 pm #12765729

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Bienvenue sur le support de WPML.
Les boutons Elementor sont traduisibles. une fois dans l'éditeur avancé de traduction (ATE), avez vous essayé de chercher ce texte (En savoir plus) en utilisant la barre de recherche en haut à gauche?

S'il s'agit d'un widget provenant d'un add-on d'Elementor alors il se peut qu'il ne soit pas encore enregistré à la traduction. Je vous laisse la documentation qui explique comment l'enregistrer.

N'hésitez pas si vous avez des problèmes pour enregistrer le bouton.

Nico

janvier 6, 2023 à 4:32 pm #12765737

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Re bonjour,

J'ai oublié de préciser. Avez-vous cherché dans "WPML > Traduction de chaînes" ?

janvier 7, 2023 à 1:00 pm #12768491

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Il est difficile de savoir quelle est la cause sans regarder de plus près.
Une dernière chose que vous pouvez essayer de notre documentation c'est d'auto-enregistrer les chaînes.
- Dans "WPML > Traduction des chaînes", activez l'option "Auto-enregistrer les chaînes pour la traduction"
- Visitez quelques pages sur le frontend qui ont ce texte
- Retournez dans "Traduction de chaînes" est désactivez l'option (elle est très gourmande en ressources)
- Puis regardez si la chaine a été enregistrée pour la traduire
Doc: https://wpml.org/documentation/getting-started-guide/string-translation/finding-strings-that-dont-appear-on-the-string-translation-page/#auto-register-strings-for-translation

Si le problème persiste, merci de me fournir accès. Je réactive le champ privé.

Nico

janvier 10, 2023 à 12:35 pm #12785099

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Merci pour l'accès, malheureusement je n'ai pas réussi à trouver de solution.
Pourriez-vous essayer de mettre à jour Elementor et Elementor Pro pour voir si cela résout le problème?

La prochaine étape serait de recréé le problème sur un site test afin de faire remonter le ticket à notre équipe de compatibilité:
J'ai créé pour vous un site test sur nos serveurs:
lien caché (login en 1 clic)

- J'ai besoin que vous paramétriez WPML et ses add-ons exactement comme sur votre site (les plugins sont déjà installés). Installez ensuite Elementor et Elementor PRO et essayez de reproduire le problème.

Merci de ne pas installer d'autres plugins qui ne sont pas nécessaires pour reproduire le problème.

- Si le problème est reproduit sur nos serveurs alors je pourrais remonter votre ticket à notre équipe de compatibilité.

Nico

janvier 10, 2023 à 2:48 pm #12786481

johannR-4

Bonjour Nicolas,

J'ai mis en place le nécessaire sur le site de démo.
Par contre je ne peux pas activer la traduction automatique. Du coup les différentes pages sont en attente de traduction.

Il faudrait traduire le template utilisé sur cette page et le loop :
lien caché

Cordialement,

Johann

janvier 11, 2023 à 4:04 pm #12797173

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Merci beaucoup! J'ai fait la traduction manuellement du post, des pages et des templates Elementor et le problème est bien présent. Il semble que la traduction des boutons fonctionne uniquement dans une template "normale" mais pas dans une boucle. Pour tester cela j'ai ajouté le même bouton à la fin de la template "Archive" et celui-ci est bien traduit.

Je viens de reporter le problème directement à l'équipe de compatibilité avec le lien vers le site test. Je reviens vers vous dès que j'ai leur feedback.

Merci,
Nico

screenshot-2023.01.11-10_43_45.png
janvier 11, 2023 à 8:42 pm #12798873

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Tout d'abord, merci d'avoir reporté ce problème de compatibilité. Cette nouvelle fonction assez récente d'Elementor PRO a introduit un nouveau TYPE de widget "loop-grid" qui fonctionne comme les templates.

En attendant que cela sera résolu dans une prochaine version, voici une solution temporaire:
1. Accéder aux fichiers sur votre serveur via FTP et ouvrez le fichier wp-content\plugins\sitepress-multilingual-cms\addons\wpml-page-builders\classes\Integrations\Elementor\class-wpml-elementor-translate-ids.php

2. Ligne 108, remplacez la fonction translate_global_widget_ids

public function translate_global_widget_ids( $data_array, $post_id ) {
		foreach ( $data_array as &$data ) {
			if ( isset( $data['elType'] ) && 'widget' === $data['elType'] ) {
				if ( 'global' === $data['widgetType'] ) {
					$data['templateID'] = $this->translate_id( $data['templateID'] );
				} elseif ( 'template' === $data['widgetType'] ) {
					$data['settings']['template_id'] = $this->translate_id( $data['settings']['template_id'] );
				}
			}
			$data['elements'] = $this->translate_global_widget_ids( $data['elements'], $post_id );
		}

		return $data_array;
	}

Par:

public function translate_global_widget_ids( $data_array, $post_id ) {
		foreach ( $data_array as &$data ) {
			if ( isset( $data['elType'] ) && 'widget' === $data['elType'] ) {
				if ( 'global' === $data['widgetType'] ) {
					$data['templateID'] = $this->translate_id( $data['templateID'] );
				} elseif ( 'template' === $data['widgetType'] || 'loop-grid' === $data['widgetType']) {
					$data['settings']['template_id'] = $this->translate_id( $data['settings']['template_id'] );
				} 
			}
			$data['elements'] = $this->translate_global_widget_ids( $data['elements'], $post_id );
		}

		return $data_array;
	}

Le type "Loop grid" sera alors pris en compte dans les traductions.

Je viens de tester le code sur le site test est cela fonctionne. Merci de me confirmer que cela fonctionne également de votre côté.

Nico

screenshot-2023.01.11-15_40_46.png
janvier 12, 2023 à 10:58 am #12803927

johannR-4

Cela fonctionne parfaitement. Merci beaucoup pour votre réactivité. Bravo à l'équpe.

janvier 12, 2023 à 11:18 am #12804067

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Bonjour,

Nous avons créé un errata, le temps que cela soit incorporé dans une nouvelle version. Je laisse le lien ici, si un autre client a le même problème: https://wpml.org/errata/elementor-pro-elementor-loop-template-button-is-not-translated/

Bonne journée 😉

juin 21, 2023 à 7:59 pm #13871503

Nicolas V.
Supporter

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

Fuseau horaire: America/Lima (GMT-05:00)

Pour information, cela a été incorporé dans WPML 4.6.4 qui est sorti hier. Si un autre client lit ce message il ne devrait pas avoir besoin d'utiliser ce code, mais simplement mettre à jour WPML.

Merci encore d'avoir reporté ce problème et de nous aider à améliorer notre plugin!