Tutoriel : Réaliser un site multilingues - Aerilys

représente une chaine de caractères, tandis que le « => » représente tout simplement mon caractère de séparation. Les amateurs de langage C auront reconnu ...
109KB taille 5 téléchargements 123 vues
Tutoriel : Réaliser un site multilingues INDEX : 1. Introduction 2. Détecter la langue 3. Gérer les langues avec PHP a. Usage de variables b. Traduction à la volée (passage de fonction) 4. Gérer les langues en ASP .NET a. Avec des constantes b. Avec des fichiers de traduction 5. Conclusion

1) Introduction Bonjour à tous ! Aujourd'hui, nous allons apprendre à réaliser un site multilingues. Mais avant tout, qu'est-ce qu'un site multilingues? Il s'agit d'un site où l'utilisateur peut choisir la langue du texte? Oui, mais il est possible de faire mieux encore : régler automatiquement la langue du texte du site suivant la configuration du visiteur.

Pour cela, nous allons utiliser du Javascript, et soit du PHP, soit de l'ASP .NET. Prêt? Allons-y alors !

2) Détecter la langue (Javascript en option) Première étape, décidez comment vous allez gérer la traduction. IL y a deux écoles : La plus classique, la plus simple, et certainement la plus fiable, est de laisser le visiteur choisir sa langue. Le mieux pour cela, est de lui demander sur la première page du site, et ensuite de mettre son choix dans un cookie, afin que les autres pages puissent se mettre à jour en fonction. L'autre solution, est automatique, mais peut parfois poser problème, principalement si le Javascript est désactivé sur le navigateur du client (certes, cela n'arrive pas souvent, mais sait-on jamais ;)). Elle consiste tout simplement à récupérer la langue du navigateur, au moyen du code suivant :

var langue = navigator.language;

Et vous voici avec le code de la langue du navigateur client. S'il est en français par exemple, vous récupérerez le code "fr". Vous pouvez soit mettre ce résultat en cookie (conseillé), soit le récupérer et le gérer à chaque page. Attention cependant, si vous utiliser cette méthode, il y a deux règles à respecter : La première, toujours permettre au client de changer de langue. Ainsi, au cas où il y aurait eu un défaut de détection, qu'il puisse choisir quand même sa langue. Deuxièmement, mettre une langue par défaut. Il arrive en effet qu'il ne soit pas possible de récupérer la langue du navigateur.

3) Gérer les langues avec PHP Nous allons voir deux méthodes pour permettre la traduction à la volée du texte de votre site par PHP. Chacune de ses méthodes à ses avantages et ses inconvénients. A vous de choisir ce qui vous convient le mieux .

a)Usage de variables Voici une méthode extrêmement simple, puissante et très efficace pour des sites où les textes sont longs. Mais elle devient de suite moins utile lorsque vous avez besoin de souplesse dans la traduction. Nous allons voir tout cela en pratique, et tout vous paraitra plus clair ! Nous allons d'abord mettre toute notre traduction pour une langue particulière dans un fichier. Attention, vous devrez lui mettre une extension en .php. Ensuite, suivant la langue, vous chargerez le fichier de traduction qui convient.

Exemple : (code d'acquisition de langue)

Maintenant que vous savez comment inclure votre fichier de traduction, vous devez le remplir, à l'aide de variables PHP ! On utilisera ensuite ces variables dans nos pages.

Exemple: Le fichier de traduction "english.php"