Avoir une vue ... invisible

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

  • [RÉGLÉ] Avoir une vue ... invisible

    Bonjour

    Lorsqu'on développe une vue pour un composant Joomla, le simple fait de placer la vue dans le dossier com_monComposant/views/ fait que cette vue est accessible dans l'admin, dans l'écran de création d'une entrée de menu.

    Dans un cas bien précis, je ne souhaite pas cela : je voudrais pouvoir avoir des vues qui ne sont pas accessibles depuis une entrée de menu mais uniquement via d'autres pages de mon composant.

    Au cas où je ne suis pas assez clair : la page http://avonture.be/allevents/demo/in...display&ei=150 reprend une liste d'inscrits. Au bas de cette liste, deux boutons, le premier CSV et le second HTML. En cliquant sur le bouton HTML, la page http://avonture.be/allevents/demo/in...tmpl=component est ouverte.

    Cette page correspond à une vue nommée "participants". Cette vue est donc dans /com_allevents/views/participants.

    J'aimerais que cette vue ne soit pas accessible depuis un menu.

    Est-ce quelqu'un connaît une astuce ?

    Merci.
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
    Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

  • #2
    Re : Avoir une vue ... invisible

    Bonjour,
    le simple fait de placer la vue dans le dossier com_monComposant/views/ fait que cette vue est accessible dans l'admin, dans l'écran de création d'une entrée de menu.
    Ben non, encore faut-il qu'elle ait au moins un layout avec un fichier .xml dedans.
    Autrement dit : pas de fichier .xml das les dossiers tmpl, pas d'entrée de menu (pas de paramètres pour le layout non plus, mais bon...).
    Schtroumpfe toi le Schtroumpf t'aidera.
    Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

    Commentaire


    • #3
      Re : Avoir une vue ... invisible

      Salut GS et merci pour ta réponse.

      Ben non, c'est la première chose que j'avais faite : supprimer les fichiers .xml qui se situent dans /view/ma_vue et /view/ma_vue/tmpl.

      Joomla reprend bien ma vue dans la liste des possibilités pour la création d'une entrée de menu.

      Après ta réponse, j'ai continué à tester et j'ai par le plus grand des hasards été dans la dossier /com_content/views/article/tmpl et là, je vois qu'il y a trois fichiers PHP : default, form et pagebreak. Dans les choix de menus, il y a default & form.

      En ouvrant pagebreak.xml, j'ai trouvé ceci : "<metadata><layout hidden="true" /></metadata>". Et ça marche.

      La condition : il faut que cette vue soit dans un dossier où il y a au moins une vue visible.

      J'avais créé /com_allevents/views/participants/tmpl/default.php et ça ne marche pas, même avec le hidden=true car dans /tmpl, je n'ai que default. J'ai migré mon default.php dans un autre dossier /views/xxxx; dossier où j'ai une vue visible, et là c'est OK.

      Merci pour la piste.

      Je passe en Réglé.
      Christophe (cavo789)
      Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
      Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

      Commentaire

      Annonce

      Réduire
      Aucune annonce pour le moment.

      Partenaire de l'association

      Réduire

      Hébergeur Web PlanetHoster
      Travaille ...
      X