Comment utiliser les variables texte définies dans le .ini de son template

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

  • Comment utiliser les variables texte définies dans le .ini de son template

    Bonjour,

    J'utilise un fichier fr-FR.tpl_nomdemontemplate.ini dans lequel je place les variables texte dont j'ai besoin dans mon template. Ce fichier est placé, avec tous les autres .ini dans /language/fr-FR/ .

    Tout fonctionne lorsque j'utilise ces variables dans mon index.php avec <?php echo JText::_('NOM DE MA VARIABLE'); ?>

    Par contre, si je veux utiliser une de ces variables ailleurs (exemple : dans \components\com_user\views\user\tmpl\form.php), elle n'apparait plus. Ou plutôt, son nom apparait sur la page, mais pas sa valeur.

    Et si je place cette variable dans le fichier /language/fr-FR/fr-FR.com_user.ini : là, ça fonctionne.
    J'en déduis que chaque fichier joomla est "attaché" à un fichier .ini (d'où la présence de tous ces .ini).

    Mes questions :
    1. où cette association (fichier php joomla <-> fichier .ini) se fait-elle ?
    2. ne peut-on pas "propager" un fichier .ini dans tout le site ?
    3. ne peut-on pas rendre "prioritaire" un fichier .ini sur les autres ?


    S'il existe des réponses favorables aux deux dernières questions, cela permettrait de regrouper toutes les variables (les perso + celles de Joomla qu'on a modifié) dans un seul fichier .ini (celui du template par exemple) ce qui éviterait qu'elles ne soient écrasées à chaque MAJ de joomla. Ce serait bien cool !
    Dernière édition par fcc92 à 03/08/2008, 19h25

  • #2
    Chaque "extension" a en effet son .ini
    Tout token présent dans le fichier général fr-FR.ini donne la priorité à un token présent dans le fichier d'extension .ini spécifique.
    Si vous ajoutez des variables qui ne sont présentes dans aucun fichier du core, et que vous voulez les utiliser en de multiples occasions, elles doivent être placées dans fr-FR.ini
    Je ne connais pas de méthode pour charger un fichier custom.ini qui prendrait la priorité sur tous les fichiers .ini
    Jean-Marie Simonet / infograf768
    Joomla co-fondateur. Joomla Production Working Group.
    Sauf demande explicite de ma part, merci de ne pas utiliser de Message Privé pour poser des questions. Le forum est là pour ça.

    Commentaire


    • #3
      par contre dans une extension donnée il suffit de mettre cette ligne pour que le fichier désiré ini soit chargé
      si le fichier de langue est dans l'admin (administrator/language/ )
      Code PHP:
      JPlugin::LoadLanguage('nom-du-fichier-sans-.ini',JPATH_ADMINISTRATOR); 
      sinon s'il est dans /language/
      Code PHP:
      JPlugin::LoadLanguage('nom-du-fichier-sans-.ini'); 
      cours de SVT - infos scientifiques : www.nicolas-ogier.fr
      pas de demandes d'aide par mp, elles seront systématiquement refusées !
      Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérer à l'AFUJ https://www.joomla.fr/association/adherer

      Commentaire


      • #4
        Infograf et Opware, merci infiniment pour vos réponses.
        J'y vois un peu plus clair.

        J'ajoute un élément que j'ai découvert hier :
        Lorsqu'on fait figurer 2 fois la même variable dans un même fichier .ini , c'est la dernière définie (dans l'ordre de lecture de haut en bas) qui l'emporte.

        Ceci me permet donc de conserver mon astuce :
        je place au fond de la page du fichier fr-FR.ini le bloc contenant toutes les variables que j'ai, soit créé de toute pièce, soit modifié. Ainsi, mes valeurs "écrasent" celles définies plus haut dans le fichier.

        Ainsi, lors d'une MAJ joomla (le fr-FR.ini est très souvent mis à jour), il me suffit de coller à nouveau mon bloc en bas du fichier pour instantanément retrouver mes modifs (sans avoir à fouiller dans le fichier et corriger à nouveau toutes les variables que je veux modifier).

        Hélas, cette astuce ne permet pas de placer 1 seul bloc dans le fr-FR.ini pour corriger tout le site, car le fr-FR.ini n'a pas de priorité sur les autres .ini (sauf si la variable n'est pas présente ailleurs).
        Ainsi, des variables existantes (du core) modifiées dans fr-FR.com_user.ini devront être re-modifiées après une MAJ. Eventuellement en utilisant mon astuce du bloc.

        J'espère avoir été clair.

        Je suis preneur pour d'autres asctuces concernant la gestion des variables de langues.
        Dernière édition par fcc92 à 03/08/2008, 13h21

        Commentaire


        • #5
          Juste une petite question pour Infograf :

          Envoyé par infograf768 Voir le message
          .../...
          Tout token présent dans le fichier général fr-FR.ini donne la priorité à un token présent dans le fichier d'extension .ini spécifique. .../...
          Qu'entendez-vous par token ?

          Car s'il s'agit d'une variable (TITRE=Bienvenue sur notre site !) je n'ai pas constaté cette "priorité". Si une variable est spécifiée dans le fr-FR.com_user.ini ET dans le fr-FR.ini, c'est celle du com_user qui gagne.

          ?

          Commentaire


          • #6
            Tout token présent dans le fichier général fr-FR.ini donne la priorité à un token présent dans le fichier d'extension .ini spécifique.
            DONNE la priorité, cad que la variable de com_user l'emporte sur celle de fr-FR.ini.

            Le "token" est le texte de la variable avant le signe = cad le texte du JText
            Le "string" est la deuxième partie après le signe =
            Jean-Marie Simonet / infograf768
            Joomla co-fondateur. Joomla Production Working Group.
            Sauf demande explicite de ma part, merci de ne pas utiliser de Message Privé pour poser des questions. Le forum est là pour ça.

            Commentaire


            • #7
              OK, parfait "Donne la priorité" = "cède la priorité".
              je comprends mieux.

              Merci également pour les explications sur le token.

              Bonne fin de journée.

              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