Comment traduire un thème WordPress en français
1. Avant de commencer
La traduction d’un thème WP, c’est d’abord l’édition de fichier PHP !
Derrière cet acronyme rien de bien méchant, juste un language web possédant une syntaxe bien spécifique (comme peut l’être l’HTML, le JS, le C, etc.)
Cela dit içi rien de bien compliqué, on verra juste les subtilités à connaître pour ne pas provoquer d’erreur lors de l’affichage ^^
1.1 Les Éditeurs
Pour modifier un fichier PHP, il nous faut un éditeur de texte.
Pour cela il existe 2 très bons logiciels gratuits et français disposant de fonctions avancées (coloration syntaxique par exemple) :
– NotePad 2
– NotePad ++Vous pouvez également travailler avec WordPad ou Bloc-Note de Windows, cependant ils seront moins pratiques à l’usage.PS : Les fans de DreamWeaver and co peuvent traduire un thème WP avec leur logiciel favori sans aucun problème…
1.2 Traduction
Vous avez un doute pour la traduction d’un terme? plusieurs solutions s’offrent à vous :
– Votre bon vieux dictionnaire français-anglais
– Google
– Reverso
– Consulter le thème par défaut français : Kubrick
1.3 Notes
Lors d’une traduction, veuillez toujours laisser le copyright et les crédits de l’auteur…
Respecter leur travail !
Néanmoins, rien n’interdit de rajouter une ligne avec le nom et le site web du traducteur…
2. Obtention du thème VO
Pour trouver un thème qui vous plaît, il existe quelques sites de démo dont les principaux sont :
- Themes.wordpress : un navigateur de thèmes impressionnant.
- Alex Kings pour pouvoir les retrouver par nom plus quelques autres.
- Sur le Codex
Télécharger et dézipper l’archive correspondante, dans ce tutoriel, le thème sera WHEATGrass de Michael Martine
2.1 Structure d’un thème et explication des fichiers
La structure d’un thème WP est toujours basée sur la même trame.
C:\WHEATGrass
| 404.php (Fichier personnalisant les erreurs 404)
| archive.php (Archives des posts)
| archives.php (Archives des posts)
| comments-popup.php (Gestion des commentaires en popup)
| comments.php* (Gestion des commentaires)
| footer.php* (Pied de page)
| header.php* (Haut de page)
| index.php* (Page principale)
| links.php (Liens Webs)
| page.php (Page personnalisée de WP)
| readme.txt (Notes de l’auteur)
| search.php (Recherche de WP)
| searchform.php (Formulaire de la recherche WP)
| sidebar.php* (Menu latéral)
| single.php (Page unique)
| style.css* (Fichier de style)
|
\—images
Il se peut que votre thème comporte moins de fichiers… Rien de grave…
(Les fichiers avec une petite étoile devant sont théoriquement toujours présents…)
Les thèmes peuvent être plus ou moins développés techniquement.
2.2 La syntaxe PHP
Tout comme l’XHTML, ou n’importe qu’elle langage de programmation, le PHP est normalisé par un certain nombre de règles.
Si ces règles ne sont pas respectées, vous obtiendrez une erreur lors de l’affichage de votre site.
1er point : Les chaînes de caractères entre simples quotes !
Ex : Vous souhaitez traduire la ligne suivante :
<?php _e('Category'); ?>
qui affiche à l’écran : Category
Attention de ne pas effacer un simple quote : <?php _e(Category'); ?>
Ne pas modifier l’emplacement des parenthèses : <?php _e('Category';) ?>
La syntaxe et traduction correspondante dans ce cas est : <?php _e('Catégorie'); ?>
2.2.1 La syntaxe HTML
Les fichiers PHP comporte une grande partie HTML…
La syntaxe est moins contraignante, mais n’oubliez pas d’ouvrir et fermer vos balises…
C’est très important si vous souhaitez disposer d’un thème W3C compliant…
Pas d’informations complémentaires sur le html, où vous pourrez trouver toute l’aide nécéssaire sur internet !
2.3 Encodage UTF-8
Une grande majorité des blogs WP utilise l’encodage UTF-8 (par défaut) pour générer le rendu des pages.
Cela impose de remplacer certains caractères (ceux accentués en France) par leur équivalent UTF-8
Les principaux caractères accentués que vous retrouverer dans vos thèmes :
é => é
è => è
ê => ê
à => à
ù => ù
un espace vide =>
2.4 Heure et Date en PHP
Sur les thèmes anglais, l’heure n’apparaît pas au format français… Logique…
Pour y remédier, il faut généralement éditer les fichiers Index.php et Comments.php
Le format anglais : février 7th, 2006 : <?php the_time('F jS, Y') ?>
Le format francais : 7 février 2006 : <?php the_time('j F Y') ?>
Il existe encore d’autre variable pour afficher l’heure, n’hésiter pas à consulter le site suivant pour obtenir le format précis que vous souhaiter
3. Traduction du thème
2 Techniques :
- Traduction « visuel », vous repérez les chaines de caractères anglaises et vous rechercher ces occurences directement dans les fichiers.
- Traduction complète, peu importe le rendu, vous naviguer dans l’intégralité des fichiers HTML et traduiser toutes les occurences anglaises.
Un thème peut se découpe en plusieurs parties…
Pour comprendre à quoi correspond chaque fichier, rien ne vaut de belles images ^^
Ci-dessous, vous trouverez quelques exemples de traduction….
3.1.1 header.php
Il contient dans la majorité des cas 3 éléments, une bannière, le titre et la description du blog.
En général aucune traduction n’intervient dans ce fichier.
Cependant il arrive qu’un menu horizontal soit présent dans le header, dans ce cas précis n’oubliez pas de traduire les chaines anglaise qui pourrait s’y trouvé ^^
Dans le cas présent pas de modification.
PS : N’hésitez pas à ajouter vos informations META pour améliorer votre référencement dans la partie HEAD.
3.1.2 sideBar.php
La sidebar correspond à la barre latérale, elle comprend l’ensemble des menus, catégories, calendriers et autres plug-ins personnalisés de WordPress…
Attention lors de la traduction !
Dans l’exemple présent, on dispose d’un menu composé de :
* Home
* À propos
On édite le fichier Sidebar.php
On situe le terme ‘Home’, à l’aide de la recherche si nécessaire…
<ul>
<li class="page_item"><a href="<?php bloginfo('url'); ?>">Home</a></li>
<?php wp_list_pages('title_li='); ?>
</ul>
La traduction correspondante :
<ul>
<li class="page_item"><a href="<?php bloginfo('url'); ?>">Accueil</a></li>
<?php wp_list_pages('title_li='); ?>
</ul>
PS : Pour information la ligne suivante :
<?php wp_list_pages('title_li='); ?>
permet d’afficher l’ensemble des pages statiques de vote blog WP.
On continue la lecture du fichier, on arrive à la section Subscribe qui correspond au flux RSS du blog. Personnellement je ne les positionne pas içi.
Pour éviter de passer du temps à une traduction inutile, je commente le code. (cela permettra de l’utiliser ultérieurement si besoin)
<h2>Subscribe</h2>
<?php bloginfo('name'); ?> syndicates its <a href="feed:<?php bloginfo('rss2_url'); ?>">weblog posts</a>
and <a href="feed:<?php bloginfo('comments_rss2_url'); ?>">Comments</a> using a technology called
RSS (Real Simple Syndication). You can use a service like <a href="https://bloglines.com/">Bloglines</a> to get
notified when there are new posts to this weblog.
Traduction correspondante et mise en commentaire
<!--
<h2>Syndication</h2>
<?php bloginfo('name'); ?> vous permet de syndiquer ses <a href="feed:<?php bloginfo('rss2_url'); ?>">billets</a>
et <a href="feed:<?php bloginfo('comments_rss2_url'); ?>">commentaires</a> par flux RSS (Real Simple Syndication).
–>
Note : La traduction proposée dans ce post est une appréciation personnelle de l’auteur…
Vous êtes libre de traduire comme bon vous semble, ceci n’est qu’un exemple montrant comment traduire un thème WP, pas une version d’anglais. Merci
On continue la traduction de Sidebar.php
<h2><?php _e('Author'); ?></h2>
A little something about you, the author. Nothing lengthy, just an overview.
You have to edit the sidebar file in your theme folder to add content to this part.
=>
<h2><?php _e(‘Auteur’); ?></h2>
Une petite description de l’auteur. Petite… juste un aperçu. Pour modifier ce texte, editer le fichier sidebar.php
En début de fichier il est possible d’avoir des conditions en PHP, exemple si on est sur une page d’archive
<?php /* If this is a category archive */ if (is_category()) { ?>
<!-- Traduction de la chaine suivante
You are currently browsing the archives for the <?php single_cat_title(''); ?> category.
-->
Vous naviguez actuellement dans les archives de la catégorie <?php single_cat_title(''); ?>.
Donc, si vous souhaitez traduire un thème dans le but de le redistribuer, pensez à tout traduire ^^
Vous gagnerez énormément de temps à vous inspirer (et copier coller) la traduction du thème Kubrick réalisé par l’équipe de traduction francaise…
3.1.3 index.php
A traduire :
- Informations Meta (Auteur, Date, Catégorie)
- Information Commentaires
- Lire la suite
- Article protégé
- Liens vers article suivants et précèdents
- Résultat de la recherche
11 réponses à “Traduction d’un thème WP”
Merci pour ces explications. Ce que je ne comprends pas, c'est pourquoi les chaines sont générées par des fonctions plutôt qu'écrites en dur.
Merci beaucoup de cet article ! cela m’a beaucoup aidé pour ma traduction de mon thème !
Intéressant.
Juste un point : "é" n'est pas l'équivalent UTF8 du "é"! Il s'agit d'une notation spécifique HTML, pas UTF8.
Il faut lire dans mon commentaire ci-dessus :
" & nbsp ;" n'est pas l'équivalent UTF8 du "é"…
Existe-t-il un utilitaire qui prennne un fichier php en entrée et sorte toutes les chaînes dans un fichier texte ?
Existe-t-il un deuxième utilitaire qui prenne un fichier texte contenant des chaînes de caractères et un fichier php en entrée et sorte le fichier php modifié avec les chaînes originales substituées par celle du fichier texte ?
Ceci nous permettrait de trouver toutes les chaines sans en oublier et de tout traduire en un seul endroit.
Pour les thèmes et extension WordPress il serait bienvenu que tous les auteurs annoncent clairement sur la description de leurs travaux s'ils sont "translation ready". C'est à dire avec des chaines de texte affichable correctement codées , qui permettent la traduction sans toucher au code source mais en passant par l'intermédiaire d'un fichier de traduction .mo.
C'est autrement plus souple …
Merci pour ce billet, il m’a aidé à traduire mon thème tout à l’heure. WordPress est vraiment trop facile,et c’est super.
encore merci pour la clareté de ton tuto! ça m’a vraiment aidé!
Très bon article sur la traduction d´un thème WP.
J e vais essayé de me lancer…
Tu as pensé à poedit pour traduire ton thème ?