Composant ? Module ? Plugin ?

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

  • Composant ? Module ? Plugin ?

    Bonjour,
    je dois développer une extension pour un site joomla (je n'ai jamais utilisé joomla mais wordpress, prestashop...). En gros, je dois récupérer des données d'une base de donnée extérieur et les afficher dans une page du site Joomla. Ces données sont changé que très peut souvent, du coup je pensais que le plus simple serait un bouton dans l'admin de Joomla qui permet d'aller chercher les éléments dans la BDD extérieur que quand on sait que les données ont changés, et les stoquer dans Joomla.

    Je pensais faire ceci :

    Un bouton dans l'admin qui :
    • Récupère les éléments dans la bdd extérieur
    • Les traites et stocke le résultat souhaité (rendu html) dans la bdd de joomla.


    Puis dans une page, je récupère ce rendu stoqué dans la bdd joomla pour afficher le résultat.

    Ma question est : faut-il générer un composant, un module, un plugin ?
    Pensez-vous que ce que je présente au-dessus soit cohérent avec ce que je désir faire ? Car je ne pense pas qu'il faille aller faire une requete dans la bdd extérieur à chaque affichage de la page. Surtout que les données extérieur change très peu souvent.

    Merci pour vos conseils.

  • #2
    Re : Composant ? Module ? Plugin ?

    Pensez-vous que ce que je présente au-dessus soit cohérent avec ce que je désir faire ? Car je ne pense pas qu'il faille aller faire une requete dans la bdd extérieur à chaque affichage de la page. Surtout que les données extérieur change très peu souvent.
    C'est difficile de répondre à cette question. Déja "très peu souvent" manque un peu de précision : selon les cas ça peut varier de une fois par jour (cours de bourse) à une fois par siècle (développement d'une stalactite). Les techniques à appliquer ne sont pas les mêmes.
    Il va aussi falloir (si tu envisages le bouton dans l'admin) qu'une personne soit désignée pour effectuer l'opération à chaque mise à jour. Cela suppose :
    - Qu'elle soit au courant (ça parait évident mais mieux vaut prévenir que guérir)
    - Qu'elle soit formée à la manip
    - Qu'elle ait un moyen de ne pas publier d'effectuer l'opération
    - Qu'elle soit présente (ou remplacée) au moment voulu

    Tout ça pour dire que si la procédure n'est pas entièrement automatisée il faut une grande rigueur dans sa conception et ce n'est pas gagné d'avance.
    Ilo faut aussi tenir compte de l'impact d'une consultation qui ne serait pas à jour : est-ce que ça serait catastrophique si à l'instant t quelqu'un consulte le site alors que la base n'est pas à jour.
    Connaissez-vous la loi de Murphy ? Appliquée à Joomla elle pourrait s'énoncer ainsi :
    C'est toujours lorsqu'on n'a pas pris le temps de faire une sauvegarde que les problèmes surgissent et s'enchainent.
    Moralité : faites des sauvegardes, elles vous paraitront peut-être superflues mais elles ne sont jamais inutiles.

    Commentaire


    • #3
      Re : Composant ? Module ? Plugin ?

      Merci pour tes remarques.
      Très peu souvent c'est à peu prêt une fois tous les 3 mois.
      La personne qui fait les changement sur la base de donnée extérieur aura aussi accès à l'admin sur site et donc au bouton qui ira mettre à jour les données. C'est moi-même qui l'a formerait pour cela.
      Il s'agit d'un annuaire en fait, une liste de lieu. Donc si il ne fait pas la modification imédiatement ou oublie, ne c'est pas très grave. Mais il y a très peu de risque qu'il oublie de le faire.

      Pour le moment, j'ai crée un module qui stoque dans une base de donné une information statique. Et cette information et affiché dans un article avec loadposition.
      Il me faut encore, récupérer les données de la bdd extérieur au lieu de la donné statique.

      Mais surtout créer le bouton qui lance cette manip. Et là je bloque un peu. Comme mettre un bouton dans l'admin d'un module. Ajax serait presque le mieux... j'ai pas trouvé de doc ou exemple la-dessus.
      Merci

      Commentaire


      • #4
        Re : Composant ? Module ? Plugin ?

        C'est plutot un composant qu'il te faut créer, au moins pour le backend, pour le frontend tu peux effectivement utiliser un module puisqu'il ne s'agit que d'affichage.
        Connaissez-vous la loi de Murphy ? Appliquée à Joomla elle pourrait s'énoncer ainsi :
        C'est toujours lorsqu'on n'a pas pris le temps de faire une sauvegarde que les problèmes surgissent et s'enchainent.
        Moralité : faites des sauvegardes, elles vous paraitront peut-être superflues mais elles ne sont jamais inutiles.

        Commentaire


        • #5
          Re : Composant ? Module ? Plugin ?

          Juste une remarque si je puis m'incruster :une fois tous les trois mois cela fait combien de minutes de travail manuel pour le copy/paste des données. Ceci a mettre en relation avec le temps qu'il te faudra pour faire ton super développement et le maintenir à jour avec mes prochaines évolutions de joomla ?

          Ma question en mode direct : est-ce bien rentable ? Ne serait-ce pas plus simple d'écrire une documentation "Faire l'objet mise à jour étape par étape" afin qu'une fois par trimestre ton webmaster la suite ?

          Bonne journée
          Christophe (cavo789)
          Développeur d'aeSecure; protection, optimisation et nettoyage (après hack) de sites web Apache https://www.aesecure.com/fr
          Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes
          Mes logiciels OpenSource : https://www.avonture.be

          Commentaire


          • #6
            Re : Composant ? Module ? Plugin ?

            Bonsoir
            si le besoin est de se connecter a une base externe et d'afficher ça dans une (des) page(s) ... peut etre serait il raisonnable de le faire avec une extension qui existe deja ... genre chono form, breezing forms ... etc ... plutot que de te lancer dans la conception d'une extension qui sera forcement beaucoup plus longue a mettre en place
            Et après tout, pourquoi vouloir rapatrier ces infos dans ta base de donnée plutot que de t'y connecter a des instant precis
            “Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter le nouveau service (en Beta) de la base de connaissance https://kb.joomla.fr
            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


            • #7
              Re : Composant ? Module ? Plugin ?

              Oui je me suis posé la question. Mais bon, ils n'ont pas vraiment de webmaster en fait, je risque de devoir moi faire la manip à chaque fois. Et si ça se trouve, c'est un peu plus que tous les 3 mois...
              bref, pour être sur que les données soit bien toujours celle de la bdd, plutot que de vérifier toutes les entrées une par une, je pense qu'il vaut mieux faire une extension.

              Après je sais que sous wordpress, ce serait vite fais, niveau rentabilité ce n'est pas un problème. Sous joomla, je ne connais pas donc c'est vrai que peut-être que ce n'est pas rentable. Mais j'ai du mal à le croire.

              Concernant les extensions que tu sites manu93fr, j'ai l'impression que ce n'est pas ce que j'ai besoin. Il s'agit d'extension de formulaire.
              Par contre, ça m'a fait reposé la question de la nécessité de stoquer les donnés dans la bdd de joomla. Pourquoi ne pas allé à chaque fois tapé dans la BDD extérieur. Surtout qu'il ne s'agit pas d'une bdd d'un autre serveur mais hebergé sur le même serveur. Donc niveau rapidité... je suis pas expert mais peut-être que ça peut le faire.
              Ca éviterait de faire le bouton de mise à jour... a tester effectivement.

              En fait, j'ai pas encore les infos sur la bdd extérieur, il me semble qu'elle est sur le même serveur mais je ne suis pas sur. J'attends de voir.


              Donc si je comprend bien, si je veux faire un bouton dans l'administration qui lancerait la mise à jour de ma bdd en fonction de l'autre bdd, il faut passer par un composant. C'est noté.

              Merci
              Dernière édition par shafan à 20/12/2016, 18h36

              Commentaire


              • #8
                Re : Composant ? Module ? Plugin ?

                salut
                si tu as déjà un module, pourquoi ne pas le faire pointer vers ta base de données externe tout simplement pour récupérer tes données systématiquement à jour dès que tu affiches la page ?

                BD >> module >> affichage

                CEd
                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


                • #9
                  Re : Composant ? Module ? Plugin ?

                  pour info, la doc pour se connecter sur une base externe
                  https://docs.joomla.org/Connecting_t...ernal_database
                  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


                  • #10
                    Re : Composant ? Module ? Plugin ?

                    Ah super merci, je vais regardé pour me connecter directement à la bdd. Ma crainte est lié au temps de chargement de la page. Mais peut-être que ce temps est très court... je vais voir.
                    En tout cas merci.

                    Commentaire


                    • #11
                      Re : Composant ? Module ? Plugin ?

                      Bonsoir
                      Je suis plutôt de l'avis de Ced, puisque la Bdd est déjà sur le même serveur, il est aussi rapide de taper cette base que de lire celle de joomla (qui sera lue à chaque affichage de l'extension).
                      Cela évitera de faire faire des manipulations tous les x mois pour "rien", puisque les infos sont déjà sur le serveur.
                      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


                      • #12
                        Re : Composant ? Module ? Plugin ?

                        ça ne sera pas plus lent ni plus rapide quel que soit la table. Par contre tu peux optimiser avec le cache de joomla si tu veux par la suite
                        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

                        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