Changer de template en changeant de langue

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Changer de template en changeant de langue

    Ma question est dans le titre.
    Est-ce possible?
    Y-a peut-être un peu de Php à écrire quelque part?
    Merci d'avance
    Christian

  • #2
    Bonjour,
    Merci pour ce que tu fais.
    Ca a l'air de marcher, mais pour le moment, il me renvoie le message : template non trouvée.
    Mais ça se présente plutôt.
    Je te tiens au courant (je m'absente quelques heures).
    A+
    Christian

    Commentaire


    • #3
      Envoyé par anonyme
      Tu as renommé tes templates en 'template_fr', template_en', etc. ?
      Les valeurs possibles pour le paramètre 'lang' c'est bien 'fr', 'en', etc. ?
      Si c'est autre chose (genre 'fr_FR'...) il faut évidemment en tenir compte...

      -anonyme
      J'ai renommé le template dans le fichier templateDetails.xms et j'ai remplacé l'ancien nom par le nouveau dans toutes les occurrences de index.php.
      Pour les extensions de type template_de, je me suis calé sur les codes iso que j'ai repris dans les paramètres dans joomlafish.
      Et puis, c'est tout. J'ai toujours mon message : Template file not found! Looking for template.
      Je l'ai fait 2 fois, en anglais et en allemand, je n'ai pas encore touché à mon _fr.
      Mais de toute façon, lorsque je relance un aperçu, à l'ouverture c'est bon, mais si je sélectionne le français dans la liste, ça provoque la même erreur.

      Commentaire


      • #4
        Envoyé par anonyme
        As-tu renommé les répertoires correspondants aux différentes templates installées sur ton site (les sous-répertoires directs du répertoire /templates) ?

        -anonyme
        Oui, j'ai bien renommé mes deux répertoires de test qui portent le nom du template : template_de et template_en.

        Commentaire


        • #5
          Envoyé par anonyme
          Super on y est presque

          1/Bon, on est d'accord que tu as remplacé la ligne suivante du l'index.php (celui qui est à la racine) :

          par :


          2/Le message d'erreur que tu obtiens est :

          Normalement, il doit te rajouter le nom du template cherché à la fin du message d'erreur (Looking for template bidule)...
          Tu as un nom de template ou tu n'as rien dans ce message d'erreur ?

          -anonyme
          Victoire! Ca marche.
          J'ai corrigé 2 lignes de code dans index.php.
          Maintenant ca marche pour _en et _de, et pour le français, le message d'erreur est suivi du nom de fichier, ce qui n'était pas le cas.
          Je ne sais pas si tu es une fille ou un garçon, en tous cas je t'embrasse.
          Christian

          Commentaire


          • #6
            Relance de la discussion

            Bonjour,
            Je voudrais relancer la discussion avec anonyme, car ou bien la solution n'était pas bonne et je ne m'en suis pas rendu compte sur le moment, ou bien quelque chose a changé dans Joomla. En tous cas, voilà le problème.
            Après avoir commuté de langue et commuté de template, quand je clique sur un menu, je reviens au template par défaut, c'est à dire le template_fr.
            C'est comme si la variable lang était une variable locale qui se réinitialise quand on active un menu. Ce n'est pas tout à fait vrai, car les menus traduits et les messages systèmes gérés par joomfish restent bien dans la langue sélectionnée. C'est le template qui se réinitialise.
            C'est très très génant...Si quelqu'un a le même problème ?

            Commentaire


            • #7
              Sujet à reprendre

              Bonsoir,
              Je voudrais reprendre la discussion commencée avec anonyme, voilà pas mal de temps.
              Ou bien je n'ai pas vu le problème au début, ou bien le problème est apparu ensuite.
              Quand un utilisateur change de langue, cela change le template, mais dès qu'il active un menu, l'écran revient au template par défaut (template_fr), comme la variable lang s'était réinitialisée.
              C'est très gênant. Il doit bien y avoir une solution.

              Commentaire


              • #8
                Merci de ton aide !
                J'ai fait la subtitution de code avec :
                // gets template for page
                $cur_template = $mainframe->getTemplate();
                // add this
                if( $mosConfig_multilingual_support ) {
                $cur_template .= "-". $iso_client_lang;
                }
                else {
                $cur_template .= "-fr";
                }
                Malheureusement, je reçois l'erreur suivante :
                "Le fichier recherché est template_fr-fr"
                Alors que je devrais avoir template_fr.
                J'ai bien remplacé "-fr" par "_fr", mais ça ne marche pas davantage.

                Commentaire


                • #9
                  Suite sur le How to use different templates?

                  Je viens de faire un essai après avoir transformé en commentaire la ligne
                  $cur_template = $mainframe->getTemplate();
                  Le résultat est le message d'erreur suivant :
                  "Fichier template non trouvé! Le fichier recherché :-fr"
                  J'en déduit que getTemplate() ramène la valeur courant du template qui est effectivement template_fr
                  Ne faudrait-il pas changer

                  $cur_template .= "-". $iso_client_lang;
                  }
                  else {
                  $cur_template .= "-fr";

                  Pour

                  $cur_template .= $cur_template . "-". $iso_client_lang;
                  }
                  else {
                  $cur_template .= $cur_template . "-fr";

                  Comme je ne veux pas jouer aux apprentis sorciers, n'étant pas programmeur php, je voudrais valider cette démarche.
                  Ca m'ennuie de penser qu'il puisse y avoir un bog dans le How to, d'autant que je ne dois pas être le premier à m'émouvoir des conséquences très gênantes de ce changement dans joomfish. Ca fait plusieurs mois que cette grosse anomalie pour un site plurilingue m'est siganlée.

                  Commentaire


                  • #10
                    Solution trouvée

                    Finalement, j'ai fait la modification suivante :
                    Neutraliser ligne :

                    $cur_template = $mainframe->getTemplate();

                    Puis remplacer

                    $cur_template .= "-". $iso_client_lang;
                    }
                    else {
                    $cur_template .= "-fr";

                    par

                    $cur_template .= "template_". $iso_client_lang;
                    }
                    else {
                    $cur_template .= "template_fr";

                    Et ca marche !!!!!

                    Commentaire


                    • #11
                      template selon la langue

                      Bonjour!

                      Je souhaite trouvez une solution sur le changement de template selon la langue

                      Aussi, suite au dernier post de Christian, je n'arrive pas à trouver:

                      $cur_template .= "-". $iso_client_lang;
                      }
                      else {
                      $cur_template .= "-fr";

                      quelqu'un peut il m'aider...?

                      par avance MERCI!

                      Commentaire


                      • #12
                        Bonjour Tomawack,
                        La réponse est dans le message de anonyme du 3 août ci-dessus. Tu tombes sur un Howto en anglais où se trouve un extrait de code à substituer dans le index.php.
                        Le problème est qu'il y a un bug dans le Howto que j'ai du corriger (je n'ai pas encore fait la démarche auprès de l'auteur pour qu'il corrige son Howto).
                        Une chose est sûr, c'est que chez moi, ça remarche correctemet.
                        Tiens moi au courant, mais j'aimerais que sur cette question importante et touchant tous les sites multilingues, il y ait une recommandation joomla à ce sujet, et pas seulement un arrangement entre internautes.
                        L'excellente doc en français sur joomfish pourtant récente n'est plus à jour sur ce plan.
                        Je ne me sens pas capable de le faire.

                        Commentaire

                        Annonce

                        Réduire
                        1 sur 2 < >

                        C'est [Réglé] et on n'en parle plus ?

                        A quoi ça sert ?
                        La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                        Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                        Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                        Comment ajouter la mention [Réglé] à votre discussion ?
                        1 - Aller sur votre discussion et éditer votre premier message :


                        2 - Cliquer sur la liste déroulante Préfixe.

                        3 - Choisir le préfixe [Réglé].


                        4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                        2 sur 2 < >

                        Assistance au forum - Outil de publication d'infos de votre site

                        Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                        Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                        Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                        UTILISER À VOS PROPRES RISQUES :
                        L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                        Problèmes connus :
                        FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                        Installation :

                        1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                        Archive zip : https://github.com/AFUJ/FPA/zipball/master

                        2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                        3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                        4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                        5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                        6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                        et remplacer www. votresite .com par votre nom de domaine


                        Exemples:
                        Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                        Télécharger le script fpa-fr.php dans: /public_html/
                        Pour executer le script: http://www..com/fpa-fr.php

                        Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                        Télécharger le script fpa-fr.php dans: /public_html/cms/
                        Pour executer le script: http://www..com/cms/fpa-fr.php

                        En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                        Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                        Voir plus
                        Voir moins
                        Travaille ...
                        X