Lorsque vous effectuez la traduction de votre site web avec Google Traduction, il peut arriver que certains mots ou phrases ne doivent pas être traduits. Par exemple, des informations comme des adresses, des noms propres ou des termes techniques ne changent souvent pas d’une langue à une autre. Par conséquent, il peut être nécessaire de les exclure du processus de traduction automatique. Dans cet article, nous allons explorer comment le faire.
Mise en contexte
Nous avons récemment utilisé l’extension GTranslate sur un site WordPress d’un client pour assurer la traduction automatique. Cependant, après l’intégration de cette solution, nous avons remarqué que Google Traduction interprétait et traduisait des éléments comme les adresses ou les noms propres, ce qui n’était pas souhaité. Cela nous a donc conduits à chercher une solution pour empêcher la traduction de ces éléments précis.
Que faire ?
Il existe plusieurs méthodes pour empêcher Google Traduction de traduire certains mots ou phrases. Voici deux solutions efficaces :
1. Utiliser l’attribut translate="no"
L’une des solutions les plus simples consiste à utiliser l’attribut HTML translate="no"
. Cet attribut est reconnu par Google Traduction et lui indique de ne pas traduire le contenu dans l’élément auquel il est appliqué. Voici comment l’utiliser :
<div translate="no">1234 Rue des Érables, Montréal, QC</div>
Dans cet exemple, l’adresse ne sera pas traduite, quel que soit le contexte linguistique du site.
2. Utiliser la classe notranslate
Une autre solution consiste à utiliser la classe CSS notranslate
. Cette classe est également reconnue par les outils de traduction automatique comme Google Traduction pour exclure certains éléments du processus de traduction. Voici un exemple :
<span class="notranslate">1234 Rue des Érables, Montréal, QC</span>
En appliquant cette classe à n’importe quel texte ou balise HTML, vous pouvez éviter la traduction.
Scénario d’un site web dynamique
Dans le cadre d’un site WordPress avec plusieurs plugins et des contenus générés dynamiquement, ajouter manuellement la classe notranslate
ou l’attribut translate="no"
à chaque élément peut s’avérer fastidieux. Lorsque le contenu change fréquemment, il est plus efficace de recourir à une approche dynamique pour gérer ce type de problème.
Solution avec jQuery
Pour résoudre ce problème de manière plus automatisée, nous avons opté pour l’utilisation de jQuery. Cela nous a permis de cibler automatiquement les éléments du site qui ne devaient pas être traduits, et d’y ajouter la classe notranslate
ou l’attribut translate="no"
. Voici un exemple de code jQuery que vous pouvez utiliser pour ajouter la classe notranslate
à des éléments spécifiques comme les titres d’adresses dans une page :
jQuery(document).ready(function($) {
$('.property-unit-information-wrapper h4').addClass('notranslate');
});
Dans cet exemple, nous ciblons tous les éléments h4
situés dans une section définie par la classe property-unit-information-wrapper
et nous y ajoutons automatiquement la classe notranslate
. Cette approche permet de gagner du temps et de garantir que tous les éléments requis sont correctement protégés contre la traduction.
Avantages de cette approche
- Automatisation : Vous n’avez pas besoin de modifier chaque élément à la main.
- Flexibilité : Vous pouvez facilement adapter le script pour cibler différents éléments sur votre site.
- Efficacité : Avec jQuery, vous pouvez appliquer la classe
notranslate
ou l’attributtranslate="no"
à grande échelle, quel que soit le volume de contenu.
Conclusion
Lorsque vous utilisez Google Traduction pour votre site web, il est important de s’assurer que certaines informations ne sont pas traduites, notamment les adresses ou les noms propres. Grâce à des solutions simples comme l’attribut translate="no
et la classe notranslate
, vous pouvez facilement contrôler ce qui doit ou ne doit pas être traduit. Si votre site est dynamique et complexe, l’utilisation de jQuery permet d’automatiser ce processus et de gagner en efficacité.
Avec ces solutions en main, vous pouvez désormais vous assurer que votre site sera traduit avec précision, tout en conservant intactes les informations critiques.
Commentaires