Referencement multilangue site dynamique

Nouveau WRInaute
apres plusieurs essais et discussions sur comment referencer un site dynamique en plusieurs langues quand on a deja 2 parametres passés par GET, j'en suis arrivée a faire:

utiliser l'url rewriting pour transformer:
www.monsite.com/es/mapage.php --> www.monsite.com/mapage.php?lang=es

et ca marche bien, mais j'ai un doute pour le fichier d'index:

ma page www.monsite.com/index.php contient:
- "s'il y a un parametre de langue utiliser cette langue, sinon utiliser le HTTP_ACCEPT_LANGUAGE, sinon francais."
- des drapeaux de langue pour changer de langue avec des liens vers /index.php?lang=es , /index.php?lang=fr

mon pb est que tout mon site sera proprement indexé par google de la forme /fr/mapage.php ou /es/mapage.php, sauf la page d'index qui sera tres moche: /index.php pour le francais, /index.php?lang=es pour l'espagnol.

peut-etre pourrai-je mettre comme liens de drapeaux
www.monsite.com/es/index.php (UR-->www.monsite.com/index.php?lang=es)
www.monsite.com/fr/index.php (UR-->www.monsite.com/index.php?lang=fr)

mais je vais me retrouver avec 3 fichiers index.php indexes par google?

ou alors faire que / redirige vers le /lang/index.php adequat? mais je crois que google n'aime pas les redireccions de l'index? et en plus, quelle sera la page de base de mon site: / ou /fr/index.php , la cible de la redirection?

c'est un peu confus, un peu d'aide serait bienvenue..
 
WRInaute discret
Bonjour ...

J'ai eu ce cas sur un des sites que je gère, et, a mon humble avis qui n'implique que moi et moi tout seul, tu laisses le site dynamique tel quel, tu optimise pour le référencement, et tu colle un script java sur ton index de base (en -www.tonsite.com/), qui route les surfeurs sur le repertoire de leur langue ..

GG ne lit pas le java, donc ca n'empechera pas ton référencement, et la langue sera automatiquement détectée par java qui le routera là ou il le faut .. :lol:

Pour ma part j'ai tout de meme laissé la possibilité sur l'index de chaque repertoire de chaque langue, les drapeaux permettant de selectionner un autre language, au cas ou la langue du navigateur ne serait pas celle de celui qui l'utilise :( (ca arrive, y a des gens qui ont une version english d'IE et W$, mais qui sont bien en France)

Voila, et pour ton info, j'ai créé spécifiquement mon compte ici pour te répondre, comme j'ai deja vécu ce cas et que personne ne t'avait répondu, cela m'a semblé normal !
 
WRInaute discret
Salut,

J'ai eu à faire ce choix sur le site d'un pote (dont je m'occupe de tout sauf du contenu et des mails ;o) : -http://www.astronomike.net

En fait mon code PHP renvoit vers le HTTP_ACCEPT_LANGUAGE par défaut, s'il ne fait pas partie des 3 langues dispo, je choisis le français. Donc le contenu de -astronomike.net/ est en fait une des 3 pages : (fr|en|es)_index.html. Après, les liens sont propres pour Google : les 3 drapeaux donnent directement sur (en|fr|es)_index.html sans paramètres dans le lien. Très simple à faire, il suffit d'écrire en PHP :
Code:
<a href="en<?=substr($_SERVER['REQUEST_URI'],2)?>">mon lien vers la même page en anglais</a>
En ce qui te concerne, je pense que ce doit être une truc du style :
Code:
<a href="/en/<?=$_SERVER['REQUEST_URI']?>">mon lien vers la même page en anglais</a>
Donc un truc encore plus simple. A voir si tu as le paramètres REQUEST_URI ou si c'est pas REDIRECT_URL ou SCRIPT_NAME qui serait mieux (cf le phpinfo() ).

Et là, ça référence très bien, et pour Google c'est la page en anglais qui sort à chaque fois du coup (à cause du HTTP_ACCEPT_LANGUAGE qu'il envoit), mais le FR et le ES sont très bien référencés eux aussi. En plus cela fait des liens très forts entre toutes les pages du site, donc une transmission du PR encore meilleure :)
 
Discussions similaires
Haut