moimichel Posté 18 Octobre 2006 Posté 18 Octobre 2006 Bonjour, Pour créer un site en plusierus langues, je détecte la langue du browser ($_SERVER["HTTP_ACCEPT_LANGUAGE"]) et selon la réponse je redirige vers une ou autre directory du genre : /fr, /es, /en et ainsi de suite... Pour cette redirection j'utilise header("Location : fr/monfichier.php") pour la partie françaiseheader("Location : en/monfichier.php") pour la partie anglaiseet ainsi de suite... Questions : 1. Est-ce la meilleure façon de procéder?? 2. La fonction header("Location : ") renvoie un code 302. Google apprécie?? Il n'en tient pas compte?? Aucune importance, mon site sera indexé de toutes façons??? Merci d'avance à tous. PS: Si vous pouvez m'indiquer des resources, des idées (XHTML, CSS, PHP) pour créer un site en plusieurs langues, je suis preneur.
Leonick Posté 18 Octobre 2006 Posté 18 Octobre 2006 Et pour les étranger regardant le site depuis la France ou bien les Français qui le regarde depuis l'étranger, comment cela se passera ?
Cariboo Posté 19 Octobre 2006 Posté 19 Octobre 2006 1. Est-ce la meilleure façon de procéder?? Ca dépend de ton public, tu peux aussi détecter l'origine géographique en fonction de l'IP. Mais en général, c'est une bonne méthode. Certains utilisent plutôt un script qui change le contenu en fonction de la langue du navigateur. Ce qui évite la redirection. Mais cela ressemble plus à du cloaking, à utiliser intelligemment. 2. La fonction header("Location : ") renvoie un code 302. Google apprécie?? Il n'en tient pas compte?? Aucune importance, mon site sera indexé de toutes façons??? Cela ne gênera pas forcément l'indexation, mais il vaut mieux une redirection 301. Tu peux indiquer dans la fonction header le code d'erreur à envoyer.
moimichel Posté 19 Octobre 2006 Auteur Posté 19 Octobre 2006 (modifié) Réponse à Leonick : Pas de problème : il y a toujours des petits drapeaux qui obligent mon site à utiliser la langue choisie par le client et rien que celle la!!! Je ne voulais pas rentrer dans les détails sur ce sujet, mais si ça intéresse je peux indiquer la procédure utilisée. ($_SESSION combinié avec $_GET ). Merci Cariboo!! Comment envoyer le code 301 au lieu du 302 (par défaut) ?? Modifié 19 Octobre 2006 par moimichel
Leonick Posté 19 Octobre 2006 Posté 19 Octobre 2006 En lui indiquant dans les en-têtes de page header("Status: 301 Found");header("Location: http://www.example.com/new_page");
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant