Tutorial site multilingue

Résolu
Bonsoir à vous tous,

Je voudrais vous demander un renseignement.
Je suis à la recherche d'un livre ou d'in tutorial sur le développement d'un site multilingue en PHP MySQL
Veuillez m'en informer si vous avez des informations à ce sujet.
Merci beaucoup

7 réponses

  1. tu peux utilise ce totorial
    http://www.phpdebutant.org/article107.php
    14
    1. Ancien mais terriblement efficace merci !
      0
  2. c le meilleur quand on ne connait absolument rien ... Apres ca se complique un peu!
    2
    1. Tien sa c'est le meilleur https://openclassrooms.com/fr/ il y a tout dessus
      1
      1. c'est le meilleur quand on est un noob en informatique, les communautés où l'on dispense du savoir de professionnel à des amateurs c'est bien, mais lorsque des amateurs en prog par exemple ne se sentent plus pisser et qu'ils se permettent de donner des conseils en donnant des mauvaises pratiques du code, ca devient vite le bordel.

        Et il n'y a pas que le site du zéro sur le web ;)
        0
      2. Oui, surtout que les professionnels utilisent souvent des techniques d'amateur.
        0
    2. Bonjour,

      Oui j'ai ce genre de solution. Un bon exemple ici:
      http://exemple.camping-car.org/

      A noter que le changement de langue renvoie sur la page d'où on est. Il n'y a pas plusieurs répertoires. Pour chaque langue c'est le même fichier php.

      L'appui sur le drapeau de changement de langue génère un bête cookie langue='fr' ou 'de' ou 'en' pour français, allemand, anglais...

      Ensuite, une petite classe applicative permet d'afficher les textes comme ceci:

      <h1><?php echo Appli->lang('accueil site', 'homepage', 'startseite'); ?></h1>

      la première chaîne est passée à un paramètre str_fr, la seconde à un paramètre str_en, etc.... L'ordre doit être respecté.

      La fonction lang est simple:

        /**
        * Emission d'un texte dans la langue choisie par l'utilisateur
        *  sept langues définies dans cet ordre: fr en ge es it ru jp
        *
        * @param  $str_fr  string texte en français
        * @param  $str_en  string texte en anglais
        * @param  $str_ge  string texte en allemand
        * @param  $str_es  string texte en espagnol
        * @param  $str_it  string texte en italien
        * @param  $str_ru  string texte en russe
        * @param  $str_jp  string texte en japonais
        */
        function lang($str_fr, $str_en=null, $str_ge=null, $str_es=null, $str_it=null, $str_ru=null, $str_jp=null) {
          switch ($this->langue) {
            case "fr":              // texte en français
              return $str_fr;
              break;
            case "en":              // texte en anglais
              if($str_en==null) {
                $str_en = $str_fr;
              }
              return $str_en;
              break;
            case "de":              // texte en allemand
              if($str_ge==null) {
                $str_ge = $str_fr;
              }
              return $str_ge;
              break;
            case "es":              // texte en espagnol
              if($str_es==null) {
                $str_es = $str_fr;
              }
              return $str_es;
              break;
            case "it":              // texte en italien
              if($str_it==null) {
                $str_it = $str_fr;
              }
              return $str_it;
              break;
            case "ru":              // texte en russe
              if($str_ru==null) {
                $str_ru = $str_fr;
              }
              return $str_ru;
              break;
            case "jp":              // texte en japonais
              if($str_jp==null) {
                $str_jp = $str_fr;
              }
              return $str_jp;
              break;
          }
          return $str_fr;
        }


      On voit bien l'enchaînement des langues acceptées: fr en de es it nl ru jp. Fonction modifiable. Il y a peut-être mieux, mais c'est pas toujours simple.

      Pour mes scripts, celà offre l'avantage d'embarquer une page en plusieurs langues dans un seul script. Extrait de code:

      <p><a href='javascript:history.go(-1)'><b><?php echo $Appli->lang("Modifier votre saisie","Modify your entry"); ?></b></a></p>

      Si le cookie langue est en, ça affiche

      <p><a href='javascript:history.go(-1)'><b>Modify your entry</b></a></p>

      A+
      1
      1. Modérateur
        il y a deux côté à ce problème
        - 1 le codage : donc plusieurs parties en plusieurs langues, là c'est faisable
        2 - le référencement ensuite, et là c'est quasi impossible : une langue = une déclaration de langue = un site
        ... la différence entre le W3C et ensuite la réelle prise en compte par les moteurs ...
        pour le codage :
        https://www.unesourisetmoi.info/pages/internationalisation.php
        mais ensuite si tu vois au niveau du référencement ce sera quasi mission impossible, ou alors sur la base d'une seule langue principale que les gens (à condition qu'ils y soient arrivés via cette langue) pourront alors comprendre ou traduire ;)
        1
        1. Avec le framework codeigniter c'est hyper simple à gérer.
          Voir une présentaion sur http://www.slideshare.net/dominuvo/domi-codeigniter4-i18n
          1
          1. http://www.crim.fr/em/docMul/
            0