Documentation Universally

Guides étape par étape, conseils de SEO multilingue et meilleures pratiques pour vous aider à traduire et à développer votre site WordPress.

Ce que Universally traduit par défaut

Universally traduit le texte visible sur une page ainsi que les métadonnées que les moteurs de recherche et les plateformes sociales lisent. Vous ne configurez rien de tout cela. Cela se produit à chaque requête, et cette page est la liste exacte pour que vous sachiez à quoi vous attendre avant de commencer à exclure des éléments.

Contenu visible

Tout texte qu'un visiteur peut lire : titres, paragraphes, listes, liens, boutons, cellules de tableau et étiquettes.

Attributs

Texte qui n'est pas visible comme contenu de page mais qui est lu à voix haute, affiché au survol, ou affiché lorsqu'un élément ne se charge pas :

Attribut Où il apparaît
alt texte alternatif de l'image, lu par les lecteurs d'écran et affiché lorsqu'une image échoue
titre texte de l'infobulle au survol
placeholder l'indice gris à l'intérieur d'un champ de saisie vide
label-aria le nom accessible d'un contrôle sans texte visible
valeur le texte sur les boutons input tels que submit et reset, et sur tout élément qui porte également un attribut title

La traduction de alt et aria-label est la raison pour laquelle une page traduite reste utilisable avec un lecteur d'écran, plutôt que de changer de langue visuellement mais pas pour la technologie d'assistance.

La règle value couvre un cas intéressant à connaître : une entrée qui porte un attribut title voit également sa value traduite, même si elle est cachée. Si une valeur pré-remplie est une donnée plutôt qu'une copie (un nom, une référence, un montant), supprimez l'attribut title ou ajoutez class="notranslate" à cette entrée.

Métadonnées de la page

L'élément <title>, plus ces balises meta :

Étiquette Utilisé par
description l'extrait sous votre résultat dans la recherche
og:title, og:description, og:image:alt, og:site_name Facebook, LinkedIn, Slack et tout ce qui lit Open Graph
twitter:title, twitter:description, twitter:image:alt X et autres lecteurs de cartes Twitter

Un lien partagé est donc prévisualisé dans la langue du visiteur, pas dans la langue source.

Données structurées

Le texte à l'intérieur de <script type="application/ld+json"> est traduit champ par champ, de sorte que les résultats enrichis restent dans la bonne langue. Les champs couverts sont name, description, headline, alternativeHeadline, articleBody, caption, text, abstract, award, slogan, alternateName et disambiguatingDescription.

Les valeurs qui ne sont pas du texte lisible par l'homme, telles que les URL, les dates, les prix et les identifiants, sont laissées telles quelles.

Une phrase est traduite en un seul bloc, y compris le balisage à l'intérieur. Gras, italique, code en ligne, un lien, un <span> : ceux-ci restent à leur place plutôt que d'être extraits et réassemblés, de sorte que la traduction conserve l'emphase de l'original.

Prenez ceci :

<p>Read the <strong>setup guide</strong> or see <a href="/pricing/">pricing</a>.</p>

C'est une seule chaîne, pas trois. Le traducteur voit la phrase avec ses balises en place et la renvoie avec le texte traduit et les balises intactes.

Les cibles de liens ne sont jamais modifiées par la traduction. Une href est mise de côté pendant que la phrase est traduite et remise en place ensuite, de sorte que ni l'IA ni personne modifiant la chaîne dans le tableau de bord ne puisse altérer la destination d'un lien. Les liens sont ensuite localisés dans une étape séparée, ce qui transforme /pricing/ en /es/pricing/ sur la page espagnole. Voir Exclure la localisation des liens pour les chemins que cette étape laisse intacts.

Dans l'éditeur de traductions, ce balisage mis de côté apparaît comme un espace réservé. Conservez chacun exactement une fois, sinon la sauvegarde sera refusée. Voir États de traduction.

Ce qui n'est jamais traduit

Certains contenus sont ignorés par conception, et aucun réglage ne permet de les activer :

Ignoré Pourquoi
<script> et <style> traduire du code casserait la page
<pre> les exemples de code préformatés doivent rester tels quels
<noscript> balisage de secours, pas du texte destiné à l'utilisateur
Un seul bloc de texte de plus de 5 000 caractères trop volumineux pour être traduit en une seule unité, il est donc laissé dans la langue source

Trois éléments sont couramment supposés figurer sur cette liste et n'y figurent pas :

  • Le <code> seul est traduit. Seul <pre> est protégé. Le <code> utilisé à l'intérieur d'une phrase est traduit avec la phrase qui l'entoure, alors ajoutez class="notranslate" à tout ce qui doit rester tel quel.
  • Le texte à l'intérieur d'un <svg> en ligne est traduit lorsque le <svg> contient un élément <text>. Le balisage, les chemins et les attributs ne sont pas modifiés, mais les mots visibles dans un SVG sont traités comme tout autre texte.
  • Le contenu prérempli d'une <textarea> est traduit. Excluez-le s'il contient des données plutôt que du texte.

Une URL, une adresse e-mail ou un nombre est ignoré lorsqu'il constitue la chaîne entière. À l'intérieur d'une phrase, il est traduit avec le reste de la phrase : les liens conservent leur href intact, mais le formatage des nombres et des dates dans une phrase peut être adapté à la langue cible.

Modification de ce qui est traduit

Quatre contrôles, tous sur l'écran Règles de traduction du projet. Voir Règles de traduction pour savoir comment les utiliser.

Contrôle Effet
Inclure les sélecteurs CSS aucun effet : tout ce qui contient du texte est déjà traduit
Exclure les sélecteurs CSS ignorer les éléments que vous nommez
Exclure les pages ignorer les URL entières
Exclure la localisation des liens empêcher l'ajout de codes de langue à des chemins particuliers

Les règles de glossaire gèrent les mots et phrases uniques que vous souhaitez toujours ou jamais traduire, ce qui est différent de l'exclusion d'une région de la page. Voir Règles de glossaire.

Est-ce que cela vous a été utile ?