Bonjour,
Je m'arrache les cheveux depuis des heures de recherches ici même et ailleurs pour savoir comment structurer de la façon la plus optimale mon site multilingue, ici français, anglais ou néerlandais.
Il s'agit de la refonte d'un site français (non-multilingue) possédant un nom de domaine (ayant quelques années) en .com (accompagné du .fr, .net, .info, et .org qui redirigent depuis tout le temps en 301 sur le .com)
J'ai cru comprendre déjà que dans mon cas, dans la nouvelle version du site (maintenant multilingue), il vaut mieux réécrire les url contenant mes paramètres de session, je transforme donc :
http://www.monsite.com/index.php?lang=fr
par
http://www.monsite.com/fr/index.php
de cette manière :
Jusqu'ici rien à signaler mes URL semblent pleinement fonctionnelles avec la nouvelle structure.
Ce qui me pose problème c'est que pour le moment, si quelqu'un arrive sur : http://www.monsite.com, donc sans précisions linguistiques, rien ne redirige l'internaute (ou le robot) vers une langue en particulier.
On m'a conseillé d'utiliser ce code que je ne comprends pas réellement :
Le but final est qu'il ne puisse pas exister d'autres structures d'URL (site statique d'une dizaine de fichiers max) que :
http://www.monsite.com/fr/nomfichier.php
http://www.monsite.com/en/nomfichier.php
http://www.monsite.com/nl/nomfichier.php
La contrainte qui me rend dingue, c'est que je ne sais pas comment les bots Google (et autres) interprètent cela pour un crawl efficace et cohérent, car j'ai cru comprendre que les sessions peuvent poser problème à ce niveau.
Enfin, dernier petit détail, Google conseille d'utiliser rel="alternate" hreflang="x", comment feriez-vous ? J'ai pensé par exemple à une condition via php : Si langue en session actuelle = "fr", alors afficher ceci dans le header (et inversement si langue actuelle = "en") :
Merci infiniment de votre aide ou conseils, je vous assure que j'ai épluché tellement de sujets ici même et ailleurs, sans parler des billets officiels du blog de google traitant du sujet, qu'au final je suis encore plus perdu...
Je m'arrache les cheveux depuis des heures de recherches ici même et ailleurs pour savoir comment structurer de la façon la plus optimale mon site multilingue, ici français, anglais ou néerlandais.
Il s'agit de la refonte d'un site français (non-multilingue) possédant un nom de domaine (ayant quelques années) en .com (accompagné du .fr, .net, .info, et .org qui redirigent depuis tout le temps en 301 sur le .com)
J'ai cru comprendre déjà que dans mon cas, dans la nouvelle version du site (maintenant multilingue), il vaut mieux réécrire les url contenant mes paramètres de session, je transforme donc :
http://www.monsite.com/index.php?lang=fr
par
http://www.monsite.com/fr/index.php
de cette manière :
Code:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(fr|en|nl)/(.*)$ $2?lang=$1 [L,QSA]
Jusqu'ici rien à signaler mes URL semblent pleinement fonctionnelles avec la nouvelle structure.
Ce qui me pose problème c'est que pour le moment, si quelqu'un arrive sur : http://www.monsite.com, donc sans précisions linguistiques, rien ne redirige l'internaute (ou le robot) vers une langue en particulier.
On m'a conseillé d'utiliser ce code que je ne comprends pas réellement :
Code:
RewriteEngine on
#
# Utiliser accept-language pour rediriger automatiquement vers la langue française si aucune correspondance
RewriteCond %{HTTP:Accept-Language} ^(fr¦en¦nl)[-,;]? [NC,OR]
RewriteCond fr ^(fr)$
RewriteRule ^$ http://www.monsite.com/%1/ [R=301,L]
#
Le but final est qu'il ne puisse pas exister d'autres structures d'URL (site statique d'une dizaine de fichiers max) que :
http://www.monsite.com/fr/nomfichier.php
http://www.monsite.com/en/nomfichier.php
http://www.monsite.com/nl/nomfichier.php
La contrainte qui me rend dingue, c'est que je ne sais pas comment les bots Google (et autres) interprètent cela pour un crawl efficace et cohérent, car j'ai cru comprendre que les sessions peuvent poser problème à ce niveau.
Enfin, dernier petit détail, Google conseille d'utiliser rel="alternate" hreflang="x", comment feriez-vous ? J'ai pensé par exemple à une condition via php : Si langue en session actuelle = "fr", alors afficher ceci dans le header (et inversement si langue actuelle = "en") :
Code:
<link rel="alternate" hreflang="en" href="http://www.monsite.com/en/" />
Merci infiniment de votre aide ou conseils, je vous assure que j'ai épluché tellement de sujets ici même et ailleurs, sans parler des billets officiels du blog de google traitant du sujet, qu'au final je suis encore plus perdu...