Google translate et les blogs

Grande nouveauté sur le blog, j’ai rajouté sur la colonne de gauche des liens pour traduire le blog en anglais, vietnamien, chinois, suédois, japonais grâce à Google.

Google propose tout un service de traduction sur Google Traduction. Ce service propose un outil de traduction qui marche tant pour les mots que pour les pages web, et aussi un widget à placer sur votre blog pour pouvoir directement traduire votre page.
Le widget (ou gadget comme il l’appelle) est foncièrement laid et rien n’indique qu’on puisse le personnaliser.

Cependant, le widget n’est qu’un formulaire envoyant une requête à google. Sans en comprendre tous les paramètres, on peut y identifier l’url de la page, la langue d’origine, et la langue de traduction. Il est alors très simple de créer un formulaire pour recréer le widget à sa sauce.

Pour mon blog, j’ai pris le parti de ne proposer que quelques langues.

Voici un exemple de requête vers une page traduite du français vers le suédois : http://translate.google.com/translate?prev=_t&hl=fr&ie=UTF8&u=www.fruitdudragon.com&
sl=fr&tl=sv&history_state0=&swap=1

Le paramètre “u” correspond à l’url de la page à traduire
Le paramètre “sl” correspond à l’id de la langue d’origine (français)
Le paramètre “tl” correspond à l’id de la langue de traduction (suédois)

Afin de pouvoir traduire n’importe quelle page du blog, on peut récupérer l’url en php :


urlencode($_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"])

Et pour les langues, il suffit de faire des essais de traduction sur le site de Google translate pour retrouver les id correspondant.

Au final, voici le code que j’ai utilisé pour une traduction français -> anglais:


echo( "<a href='http://translate.google.com/translate?
prev=_t&hl=fr&ie=UTF-8&u=" . urlencode($_SERVER["SERVER_NAME"] .
$_SERVER["REQUEST_URI"])."&sl=fr&tl=en&history_state0=&swap=1'
>ENGLISH</a><br>");

3 Comments

  • Guillaume says:

    Une suggestion : ne proposer ceci que lorsqu’on détecte que la langue de l’utilisateur n’est pas le français…

  • Mme Couture says:

    Merci pour le bout de code, je vais demander à mon homme de m’installer tout ça :)

    Pour info, la traduction vers le japonnais ne fonctionne pas, message d’erreur :
    La traduction de la langue source (français) vers la langue cible (français) n’est pas prise en charge.
    Pourtant je vois bien le tl=jp dans l’url, alors pkoi google s’imagine que c’est du français vers français, je laisse ça aux pros …

  • tran says:

    Merci Mme Couture,
    Pour le japonais, il faut prendre comme paramétre de langue "ja" plutôt que "jp". Le lien a été corrigé.

Leave a Reply

Your email address will not be published. Required fields are marked *