Site bilingue, besoin de comprendre
kalakrima
-
smellems Messages postés 135 Date d'inscription Statut Membre Dernière intervention -
smellems Messages postés 135 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je parcours le web depuis 3 jours, je suis novice et en ne trouvant pas une solution et explication à mon problème, j'ai décidé de demander sur le forum :) Je poserais une question bête, donc ne m'en voulez pas trop.
Alors, j'ai fait un site bilingue : FR et EN avec php. Cependant, j'ai lu des articles sur le référencement et je ne comprend pas comment obtenir ces fameux dossiers "virtuels" recommandés par google.
Actuellement, j'ai mon site qu'il soit en anglais ou français affiche : index.php
Je voudrais faire comme la plupart d'entre nous, donc afficher : monsite.fr/en/index.php ou monsite.fr/index.php
J'ai essayé de faire avec URL rewriting, mais j'obtiens à chaque fois une erreur 500. Je suis en local pour le moment sous MAMP.
Je vous laisse mes bouts de code que j'ai fait en suivant un tuto.
Alors ma page LANG.PHP :
Ma page EN-LANG.PHP
MA PAGE DE CHOIX DE LANGUE :
Déjà je ne sais pas comment faire pour avoir des icônes ou lieu d'une liste déroulante, car c'est la seule solution que j'ai trouvé et qui fonctionne pour moi (peut être je ne me suis pas bien prise), ensuite pour l'URL c'est une catastrophe, je ne comprends pas comment appliquer cette méthode avec mon script actuel.
Si une âme généreuse peut m'éclairer sur ces points, je serais plus que reconnaissante! :)
Je vous remercie d'avance.
je parcours le web depuis 3 jours, je suis novice et en ne trouvant pas une solution et explication à mon problème, j'ai décidé de demander sur le forum :) Je poserais une question bête, donc ne m'en voulez pas trop.
Alors, j'ai fait un site bilingue : FR et EN avec php. Cependant, j'ai lu des articles sur le référencement et je ne comprend pas comment obtenir ces fameux dossiers "virtuels" recommandés par google.
Actuellement, j'ai mon site qu'il soit en anglais ou français affiche : index.php
Je voudrais faire comme la plupart d'entre nous, donc afficher : monsite.fr/en/index.php ou monsite.fr/index.php
J'ai essayé de faire avec URL rewriting, mais j'obtiens à chaque fois une erreur 500. Je suis en local pour le moment sous MAMP.
Je vous laisse mes bouts de code que j'ai fait en suivant un tuto.
Alors ma page LANG.PHP :
<?php if(isset($HTTP_COOKIE_VARS['lang'])) { $lang = $HTTP_COOKIE_VARS['lang']; } else { // si aucune langue n'est déclarée on tente de reconnaitre la langue par défaut du navigateur $lang = substr($HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'],0,2); } //script d'origine if (isset($_POST['lang_select'])) { if ($_POST['lang_select'] == 'fr') { $lang = 'fr'; //include('lang/fr-lang.php'); } elseif ($_POST['lang_select'] == 'en') { $lang = 'en'; //include('lang/en-lang.php'); } } if ($lang=='fr') { // si la langue est 'fr' (français) on inclut le fichier fr-lang.php include('lang/fr-lang.php'); } elseif ($lang=='en') { // si la langue est 'en' (anglais) on inclut le fichier en-lang.php include('lang/en-lang.php'); } //fin du script d'origine //définition de la durée du cookie (1 an) $expire = 365*24*3600; //enregistrement du cookie au nom de lang setcookie("lang", $lang, time() + $expire); ?>
Ma page EN-LANG.PHP
<?php //Menu define ('menu','Menu'); define ('Home','Home'); define ('Services','Services'); define ('Products','Products'); define ('how_it_works','How It Works?'); define ('about','About Us'); define ('contact','Contact'); //CONTENT define('HomePage','Home'); define('ProductsPage','Products'); define ('how_it_works_TITLE','How It Works?'); ?>
MA PAGE DE CHOIX DE LANGUE :
<form method=post name="lang" class="form_lang"> <select name="lang_select" onchange="document.lang.submit();"> <option label="Français" value="fr" <?php echo ($_POST['lang_select'] == 'fr'?'selected':'');?>>Français</option> <option label="English" value="en" <?php echo ($_POST['lang_select'] == 'en'?'selected':'');?>>English</option> </select> </form>
Déjà je ne sais pas comment faire pour avoir des icônes ou lieu d'une liste déroulante, car c'est la seule solution que j'ai trouvé et qui fonctionne pour moi (peut être je ne me suis pas bien prise), ensuite pour l'URL c'est une catastrophe, je ne comprends pas comment appliquer cette méthode avec mon script actuel.
Si une âme généreuse peut m'éclairer sur ces points, je serais plus que reconnaissante! :)
Je vous remercie d'avance.
A voir également:
- Site bilingue, besoin de comprendre
- Site de telechargement - Accueil - Outils
- Site comme coco - Accueil - Réseaux sociaux
- Quel site remplace coco - Accueil - Réseaux sociaux
- Site de partage de photos - Guide
- Site x - Guide
1 réponse
Bonjour kalakrima,
les site multilingues que j'ai fait n'utilisent pas de URL rewriting. mes URL sont afficher comme suit:
index.php?l=fr
index.php?l=en
j'ai toujours trouvé que c'était plus simple de ne pas changer les url. Google et les autres saivent faire la différence entre les deux pages (la même page en fr et en)
tu peux avoir des liens (icones) vers l'autre langue puisque c'est un URL différent.
le CMS que j'ai créé est disponible sur SourceForge ici:
https://sourceforge.net/projects/stpiadmin/
j'espère que ça pourra t'aider..
les site multilingues que j'ai fait n'utilisent pas de URL rewriting. mes URL sont afficher comme suit:
index.php?l=fr
index.php?l=en
j'ai toujours trouvé que c'était plus simple de ne pas changer les url. Google et les autres saivent faire la différence entre les deux pages (la même page en fr et en)
tu peux avoir des liens (icones) vers l'autre langue puisque c'est un URL différent.
le CMS que j'ai créé est disponible sur SourceForge ici:
https://sourceforge.net/projects/stpiadmin/
j'espère que ça pourra t'aider..