Changement de template et position des modules

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

  • Changement de template et position des modules

    Bonjour à tous,

    une question toute bête qui n'a pas trouvé de réponses malgré mes recherches, je ne sais même pas si cela est réalisable.

    J'ai codé un template pour mon site joomla 1.5 en 3 colonnes. Tout va bien, tout marche impeccable.

    Pour donner un peu d'interactivité au site, j'ai installé un module qui permet au visiteur de changer de template. Vu que mes autres templates avaient 3 colonnes également cela ne posait aucun problème.
    D'une manière générale j'organisais mes templates de la façon suivante :
    Colonne de gauche : Menu
    Colonne du centre : Contenu
    Colonne de droite : Flash news.

    Mon problème est le suivant : J'ai codé un template qui a 2 colonnes et quand on l'active, tous les modules positionnés dans la colonne de droite disparaissent.

    J'aurais voulu savoir si il existait une possibilité de "paramétrer" mon template 2 colonnes pour indiquer le changement de position des modules (j'utilise un genre de "nomenclature" sur mes templates pour garder une continuité : ex : le menu sera toujours dans un div/position "menu") ?

    Pour être plus clair comment indiquer à joomla d'afficher le module Flash/news dans la position "right" du template 3 colonne et dans la position "left" du template 2 colonnes ?

    J'espère m'être bien fait comprendre (c'est pas toujours évident ) et vous remercie d'avance de vos réponses.
    Dernière édition par Flywenn à 16/10/2009, 08h50

  • #2
    Tu n'as pas à te casser la tête : ta position right n'est qu'une façon de nommer les choses. J'ai déja croisé des templates où la position right était à gauche. Donc il suffit que tu déplaces ta div right là où tu veux (en haut, en bas, à gauche ...) et le contenu suivra.

    Commentaire


    • #3
      Je me suis peut être mal exprimé ou j'ai rien compris .

      Dans la console d'administration, le menu est dans la position "left" et le flash/news dans la position "right", définies dans mon template. Ca marche nickel pour mon template 3 colonnes (par défaut sur le site).

      Le problème c'est que dans mon template 2 colonnes la position right n'existe pas, j'ai que "left" et "contenu".
      Donc si le visiteur change le template en frontend avec le module que j'ai installé, dans la console d'administration le module flash/news est toujours configuré pour être dans la position "right".

      Or celle-ci n'existe plus dans le template 2 colonnes et je pense que c'est pour cela que mes modules disparaissent.

      Si j'ai ben tout compris il faudrait que mon template 2 colonnes "dise a joomla" tout ce qui est dans le right du 3 colonnes, tu le mets dans le "left" du 2 colonnes.

      Comment ? j'en sais rien. J'ai essayé la piste du fichier params.ini mais j'ai pas trouvé.

      Je continue mes recherches.

      Commentaire


      • #4
        Bonjour,
        dans lindex.php du template, tu devrais trouver un truc comme :
        Code:
        <?php if($this->countModules('left')) : ?>
        	<jdoc:include type="modules" name="left" />
        <?php endif; ?>
        tu ajoutes juste en dessous
        Code:
        <?php if($this->countModules('right')) : ?>
        	<jdoc:include type="modules" name="right" />
        <?php endif; ?>
        Schtroumpfe toi le Schtroumpf t'aidera.
        Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

        Commentaire


        • #5
          Merci à vous pour ces réponses.

          Je n'ai pas le code dont tu parles, Ô Grand schtroumpf dans la mesure où c'est moi qui ait codé ce template et que je connais mal le php.

          Je vais essayer de le rajouter pour voir ce que ça donne et je te tiens au courant. Je vais également me renseigner pour comprendre ces 3 lignes de code je n'aime pas ne pas comprendre

          Merci encore

          Commentaire


          • #6
            Re,
            Je n'ai pas le code dont tu parles, Ô Grand schtroumpf dans la mesure où c'est moi qui ai codé ce template et que je connais mal le php.
            Très mauvaise excuse ! Quand on ne connait pas, on pompe sans aucune honte sur ce qui marche à coté (contrairement à ce qu'on a essayé de t'apprendre à l'école).
            Donc regarde n'importe quel template (non pas un artisteer ) et tu trouveras ça...

            Rassure moi, tu as bien au moins des trucs comme <jdoc:include type="modules" name="left" />
            Schtroumpfe toi le Schtroumpf t'aidera.
            Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

            Commentaire


            • #7
              Oui oui ne t'inquiète pas

              l'include est bien présent. Je parlais du code php qui englobe la balise jdoc.

              Effectivement je l'ai déjà vue cette portion de code, mais ne sachant pas ce que c'est et mes templates marchant correctement sans cela je n'avais pas poussé plus loin.

              Je vais retrousser les manches et pomper sur les collègues

              Merci je te tiens au courant.

              Commentaire


              • #8
                Re,
                Code:
                <?php
                à partir de là c'est du php
                Code:
                if
                évalue l'expression entre parenthèse juste après pour savoir ce qu'il faut faire
                Code:
                ($this->countModules('right'))
                le nombre de modules dans l'emplacement ('right')
                Code:
                 :
                donc si l'expression est vraie ou différente de 0 ou non vide (en l'occurrence différente de 0) on retient les lignes qui suivent, sinon on saute au prochain endif
                Code:
                ?>
                ce qui suit n'est plus du php
                Code:
                	<jdoc:include type="modules" name="right" />
                inclure les modules de la position right'
                Code:
                <?php
                à partir de là c'est à nouveau du php
                Code:
                endif;
                fin du if, on reprend une vie normale
                Code:
                 ?>
                ce qui suit n'est plus du php derechef
                Schtroumpfe toi le Schtroumpf t'aidera.
                Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

                Commentaire


                • #9
                  Désolé de n'avoir pas répondu avant, je n'avais pas accès à internet.

                  Merci à toi, Ô Grand Manitou du php, le pauvre petit scarabée que je suis ne te remerciera jamais assez

                  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