Comment modifier le layout par défaut.

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

  • Comment modifier le layout par défaut.

    Bonjour à tous,

    J'ai un souci concernant une page, j'ai 3 vues différentes et je veux aiguiller sur une des 3 en fonction de paramètres dans le code.

    Je n'ai pas de default, je n'ai pas de paramètre layout dans l'url.

    Je souhaite en fonction d'un paramètre de la base, pouvoir aiguiller sur l'une des 3 vues, mais après plusieurs tests rien ne fonctionne si le layout n'est pas défini dans l'url.

    Quelqu'un connait il la solution ?

    Merci par avance.
    Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

  • #2
    Bonjour,

    Pas sur d'avoir tout compris. Tu veux 3 templates différents qui sont appelés en fonction d'un contexte ???

    Cordialement,
    Joël

    Commentaire


    • #3
      Bon, je vais essayer de détailler au max par ce que je m'aperçois en relisant que c'est pas bien fait sur le premier message :

      J'ai un calendrier a afficher avec 3 vues différentes : jour, semaine, mois.

      J'ai 2 types de calendriers : un qui peut afficher mois / semaine et l'autre qui peut afficher semaine / jour.

      Dans l'url, je n'ai que l'id du calendrier, en fonction de cet id, je trouve le type de calendrier, et je veux afficher sa vue par défaut, mais pour cela je devrais normalement avoir dans l'url 'layout=mois' par exemple pour que ça marche, mais là je ne l'ai pas, je cherche donc la solution pour dire au moteur quel layout utiliser mais à partir du controller, du model ou de la vue.

      Voilà, j'espère que c'est plus clair comme ça.
      Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

      Commentaire


      • #4
        Bonjour,
        c'est quel composant ? Elles ressemblent à quoi les URL ?
        Schtroumpfe toi le Schtroumpf t'aidera.
        Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

        Commentaire


        • #5
          C'est un composant que je développe.

          l'url ressemble à ça : index.php?option=com_calendar&view=calendars&id=1

          et je souhaiterai simuler l'équivalent de l'url suivante : index.php?option=com_calendar&view=calendars&id=1&layout=month
          Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

          Commentaire


          • #6
            alors pour commencer, sans vouloir faire le gars chiant, tu es dans la section 'design et template', ta demande irait mieux dans la section developpement du forum.
            Ensuite il te suffit de créer ton url avec ta variable et la récupérer dans ta page avec un JRequest pour orienter le layout d'affichage. Je ne vois pas trop ou se situe le problème
            Vive Joomla! http://www.joomlack.fr Tutoriels et extensions pour Joomla!. Livre création de template Joomla de plus de 200 pages.
            http://www.template-creator.com Outil de création de templates
            Module Maximenu CK - Megamenu, multicolonnes, chargement de module, description de lien, deroulement animé - Compatible Virtuemart, Hikashop

            Commentaire


            • #7
              [modo]Discussion déplacée dans le forum développement[/modo]
              Pas de demande de support par MP.
              S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

              Commentaire


              • #8
                je souhaiterai simuler l'équivalent de l'url suivante : index.php?option=com_calendar&view=calendars&id=1& layout=month
                Si tu suis la logique MVC Joomla, le layout fait partie des paramètres passés, donc à ton controller de gérer les divers cas possibles de layouts.
                Pas de demande de support par MP.
                S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                Commentaire


                • #9
                  Re,
                  une fois que tu as déterminé le layout, donc en principe dans ton views/calendar/view.html.php, tu lui passes la main par un :
                  Code PHP:
                  parent::display($MonLayout); 
                  dans la fonction display pour autant que $MonLayout contienne le nom du layout et qu'il existe dans views/calendar/tmpl
                  Schtroumpfe toi le Schtroumpf t'aidera.
                  Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

                  Commentaire


                  • #10
                    Envoyé par jisse03 Voir le message
                    Si tu suis la logique MVC Joomla, le layout fait partie des paramètres passés, donc à ton controller de gérer les divers cas possibles de layouts.
                    Oui, mais quid d'une modification de layout à la volée ?

                    Je ne peux pas croire qu'on ne puisse pas le faire.

                    Imaginons que quelqu'un modifie l'url et me mette un layout qui ne convient pas par rapport au type de calendrier, je dois pouvoir ré-aiguiller sur le layout par défaut pour ce type de calendrier.
                    Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

                    Commentaire


                    • #11
                      Envoyé par ced1870 Voir le message
                      Ensuite il te suffit de créer ton url avec ta variable et la récupérer dans ta page avec un JRequest pour orienter le layout d'affichage. Je ne vois pas trop ou se situe le problème
                      Le problème se situe dans l'intitulé de la réponse précédente.
                      Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

                      Commentaire


                      • #12
                        Envoyé par Grand Schtroumpf Voir le message
                        Re,
                        une fois que tu as déterminé le layout, donc en principe dans ton views/calendar/view.html.php, tu lui passes la main par un :
                        Code PHP:
                        parent::display($MonLayout); 
                        dans la fonction display pour autant que $MonLayout contienne le nom du layout et qu'il existe dans views/calendar/tmpl
                        Merci Grand Schtroumpf, j'avais déjà essayé cette voie, mais il cherche une page 'default_month' par exemple au lieu de 'month'
                        Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

                        Commentaire


                        • #13
                          Re,
                          Merci Grand Schtroumpf, j'avais déjà essayé cette voie, mais il cherche une page 'default_month' par exemple au lieu de 'month'
                          Bah, ça marche quand même, non ?
                          OK alors si tu es puriste, essaye :
                          Code:
                          $this->_layout=$MonLayout;
                          parent::display();
                          Schtroumpfe toi le Schtroumpf t'aidera.
                          Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

                          Commentaire


                          • #14
                            J'ai finalement opter pour la solution du Grand Schtroumpf, j'ai modifié l'intitulé des mes templates, et ça tourne nickel.

                            Merci encore
                            Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

                            Commentaire


                            • #15
                              Envoyé par Grand Schtroumpf Voir le message
                              Re,

                              Bah, ça marche quand même, non ?
                              Oui, merci
                              Ma boutique de vente de modules Prestashop et d'extensions pour Joomla!

                              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