Permettre de ne charger un composant sans recharger toute la page

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

  • Permettre de ne charger un composant sans recharger toute la page

    Bonjour,

    Bonjour je suis nouveau sur le forum.
    Pour donner un peu de contexte à mon problème : J'ai créé une page qui contient un menu, un contenu et un footer (basique).
    Le contenu est un composant "com_content" qui affiche une liste d'articles "Category Blog".
    Je travaille avec des overrides pour modifier l'apparence de ma page et ajouter quelques données dynamiques.

    Ce que je souhaite faire c'est suite à une action de l'utilisateur (filtre ou un tri) alors recharger uniquement le composant et non toute la page.
    J'ai vu qu'il y avait un composant "com_ajax" mais de ce que j'ai compris il est à utiliser lorsque l'on crée notre propre module ou plugin, ce qui n'est pas mon cas.

    Je ne sais pas comment m'y prendre et j'aimerais avoir de l'aide sur la façon de procéder.
    Peut être faut il que je crée mon propre composant (ce qui me parait très complexe, de plus avec mon niveau en dev...) ou alors il y a une façon plus simple (j'espère).
    Je vous remercie pour votre aide.

  • #2
    salut, tu comptes mettre en place comment tes options de tri?

    Pour moi, ces options de tri n'apparaissent que lors d'une recherche.
    De base, c'est l'administrateur qui fixe l'ordre de tri dans la vue blog et non l'utilisateur
    Dernière édition par lefabdu51 à 27/03/2023, 08h39

    Commentaire


    • #3
      Il faudrait qu'avec ta subsitutions tu gère l'ajax et que tu appelles une vue qui appelle le layout component de ta template, bref possible mais ça demande un peu de dev

      Commentaire


      • #4
        Voir la solution expliquée par daneel il y a quelques mois pour un besoin similaire (si j'ai le temps, je vais essayer d'en faire un article pour le Joomla Community Magazine Encore merci daneel !)

        Bonjour, La question est dans le sujet : - si on met un lecteur mp3 ou une radio en streaming sur un site, dès que le visiteur va cliquer sur une autre page, le lecteur va être interrompu - donc comment faire pour que le lecteur ne soit pas interrompu - (soit éventuellement en ouvrant une petite fenêtre indépendante,
        Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

        Un message d’erreur sur votre site Joomla... ayez le reflexe de consulter la base de connaissance : https://kb.joomla.fr

        Ce forum, vous l'aimez ? Il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ, l'Association Francophone des Utilisateurs de Joomla : https://www.joomla.fr/association/adherer

        Commentaire


        • #5
          Hello.

          Sans Ajax, et si tu est un peu dev tu peux fortement t'inspirer de la partie admin de com_content, pour faire coté front un model et une view du même type avec un layout de filtres standard Joomla ou spécifique pour te faire une page de liste d'articles côté front.
          Ceci en utilisant des classes héritant de classes natives de Joomla de type "list" (ListModel).
          Mais a chaque modification filtre ou ordre de tri on recharge toute la page.

          En fait ces filtres et tris sont tellement bien géré par le framework de Joomla que je n'ai jamais compris pourquoi ils n'étaient jamais (ou si peu) utilisés côté front.

          De mon côté je l'ai mis en œuvre sans modération dans mes composants côté front (par exemple ici... ou un autre ici...).
          J'ai juste supprimé le rechargement automatique, obligeant à cliquer à chaque fois sur la loupe, afin de pouvoir changer +ieurs critères avant de recharger (manuellement) la page.
          C'est moins intuitif c'est sûr...
          Dernière édition par roland_d_alsace à 28/03/2023, 19h19
          A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
          Rejoignez le Joomla Users Groupe Alsace...
          roland_d_alsace va-t-il devenir roland_du_grand_est ?

          Commentaire


          • #6
            Bonjour et merci à tous pour vos réponses.

            @lefabdu51​ Pour ce qui est des options de tri : en fait j'utilise le module de filtre "JL Content Fields Filter" qui me permet de filtrer mes articles selon mes champs définis dans Joomla. Cependant il ne permet pas de trier (ou alors je n'ai assez fouillé), du coup j'override le tableau de retour de ce module pour le retrier (c'est moche mais je n'ai trouvé que ça).

            @woluweb​ La solution semble intéressante et peut être adaptée à mon besoin. Je vais creuser. Merci !

            @roland_d_alsace​ et @Nioupixel​ Merci pour vos retours. Le développement nécessaire en m'inspirant du composant com_content me fait un peu peur​. Je vais voir la solution de Woluweb dans un premier temps.

            Merci !

            Commentaire


            • #7
              Si je me souviens bien, JL Content Filter (qui est super et gratuit) permet de recharger le contenu en AJAX.
              Il faut juste spécifier dans les paramètres l'ID ou la Classe de l'élément (DIV, ...) qui doit être rechargé (ce qui dépend du template).
              Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

              Un message d’erreur sur votre site Joomla... ayez le reflexe de consulter la base de connaissance : https://kb.joomla.fr

              Ce forum, vous l'aimez ? Il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ, l'Association Francophone des Utilisateurs de Joomla : https://www.joomla.fr/association/adherer

              Commentaire

              Annonce

              Réduire
              Aucune annonce pour le moment.

              Partenaire de l'association

              Réduire

              Hébergeur Web PlanetHoster
              Travaille ...
              X