Ce sujet est résolu. Voici une description du problème et de la solution.
Problème : Si vous rencontrez des problèmes avec les boutons ou les liens qui se "cassent" lors de la traduction de pages utilisant NectarBlocks dans le back-office, cela peut être dû à une incohérence entre les URLs enregistrées dans les attributs du bloc et dans le code HTML généré. Solution : Pour résoudre ce problème, suivez ces étapes : 1. Accédez à WPML → Réglages → onglet Custom XML Configuration. 2. Ajoutez le XML suivant :
3. Enregistrez les réglages. 4. Supprimez la traduction existante et le paquet de traduction associé. 5. Retraduisez la page depuis zéro. Si le problème persiste après modification ou duplication, vérifiez manuellement que le lien du bouton dans la page traduite correspond exactement au permalien final. Notez que ce problème a été résolu dans la version 2.5.4 de NectarBlocks.
Si cette solution ne s'applique pas à votre cas ou semble obsolète, nous vous recommandons de vérifier les problèmes connus, de confirmer que vous avez installé les dernières versions des thèmes et plugins, et si nécessaire, d'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.
Les langues: Anglais (English )Allemand (Deutsch )Français (Français )
Fuseau horaire: Europe/Zagreb (GMT+02:00)
Lorsque nous testons votre site en environnement local (localhost), tout fonctionne correctement. Cela indique qu’il pourrait y avoir un problème de compatibilité avec l’un des plugins installés sur votre site.
Pouvez-vous vérifier si le problème se produit lorsque seuls les plugins WPML sont activés?
Je viens de désactiver tous les plugins en dehors de WPML et le problème persiste.
Cependant je viens de remarquer que les blocs cassent uniquement lorsque le lien renseigné et un lien interne, qu'il renvoie vert une autre page du site. Si je mets en lien externe le problème n'apparait plus.
Les langues: Anglais (English )Allemand (Deutsch )Français (Français )
Fuseau horaire: Europe/Zagreb (GMT+02:00)
Nous avons identifié que le problème ne se produit que lorsque le bloc bouton Nectar enregistre son lien sous forme d’URL relative (par exemple `/contact`).
Lorsque le lien est enregistré sous forme d’URL absolue (par exemple `lien caché`), la traduction de la page fonctionne correctement et le problème ne se manifeste pas.
Sur notre site de test (sandbox), Nectarblocks insère automatiquement des URLs absolues, ce qui explique pourquoi nous ne pouvons pas reproduire le problème dans cet environnement. En revanche, sur votre site, le même bloc insère des URLs relatives, ce qui provoque ensuite des problèmes lors du processus de traduction.
Question:
Existe-t-il, sur votre site, un réglage, une option ou un workflow spécifique (dans WordPress, Nectarblocks ou le thème) qui ferait que les liens des blocs bouton Nectar sont enregistrés en URL relatives plutôt qu’en URL absolues?
Si c’est le cas, modifier ce réglage afin que les liens soient enregistrés par défaut en URL absolues devrait permettre d’éviter ce problème, sans avoir à corriger les liens manuellement à chaque fois.
Les langues: Anglais (English )Allemand (Deutsch )Français (Français )
Fuseau horaire: Europe/Zagreb (GMT+02:00)
Dans l’environnement sandbox, lorsqu’un lien est ajouté à un bloc de bouton, il est enregistré en tant qu’URL absolue, ce qui permet à la traduction de la page de fonctionner correctement. En revanche, sur le site en production, l’ajout du même lien donne lieu à une URL relative (par exemple, /contact), ce qui entraîne les problèmes de traduction que vous constatez.
Je ne vois aucune option forçant les liens à être en URL relative, je les mettais manuellement.
Cependant j'ai fait le test en faisant une traduction d'un bouton avec une URL absolue (d'un lien vers une page interne du site) et le problème est toujours présent.
Les langues: Anglais (English )Allemand (Deutsch )Français (Français )
Fuseau horaire: Europe/Zagreb (GMT+02:00)
Nous ne savons toujours pas pourquoi cela se produit. Nous effectuons un débogage plus approfondi et nous reviendrons vers vous dès que nous aurons identifié la cause.
Je viens de réessayer et le problème vient effectivement de ces URL relatives.
J'ai refait une page test, avec une URL absolue et lorsque je la traduis le bloc casse toujours, mais quand je réinsère une nouvelle URL (celle de la traduction) ça fonctionne et le bloc ne se casse plus.
Il y a toujours un souci mais qui est moins problématique, il serait bien que l'on puisse ajouter des URL relatives .
Les langues: Anglais (English )Allemand (Deutsch )Français (Français )
Fuseau horaire: Europe/Zagreb (GMT+02:00)
Le problème vient du fait que le bloc Bouton de NectarBlocks enregistre le lien à deux endroits : dans les attributs du bloc (réglages) et dans le code HTML généré. Si ces deux URLs ne correspondent pas exactement (par exemple après une modification, une duplication ou une traduction), WordPress détecte une incohérence et marque le bloc comme invalide.
Pour corriger cela, merci de:
1. Aller dans WPML → Réglages → onglet Custom XML Configuration.
2. Ajouter le XML suivant:
3. Enregistrer les réglages.
4. Supprimer la traduction existante (ainsi que le paquet de traduction).
5. Retraduire la page depuis zéro.
Si le problème réapparaît après modification ou duplication du contenu, merci de re-sélectionner manuellement le lien du bouton dans la page traduite et de vérifier qu’il correspond exactement au permalien final (avec slash final si votre structure de permaliens l’utilise).
Nous allons également contacter les auteurs de NectarBlocks afin de les informer de ce comportement et leur suggérer une amélioration pour éviter ce type d’incohérence à l’avenir.