Programmation de plug-in pour JCE

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

  • [RÉGLÉ] Programmation de plug-in pour JCE

    Bonjour,

    je dois créer un plugin pour JCE et pour cela j'ai recherché des infos sur le développement de ces plugins, mais la moisson a vraiment été faible ...

    le plus complet a été un post sur un forum de 2006 (https://forum.joomla.org/viewtopic.php?t=545309), des extraits qui explique que la méthode des plugins de TinyMCE ne fonctionnent plus, des pages 404 (https://www.joomlacontenteditor.net/support/tutorials/editor/item/creating-custom-styles) ...


    Je suis assez à l'aise pour créer des plugins simples pour TinyMCE,mais je viens de me mettre à JCE (c'est vrai qu'il est bien !) et là ... je sèche complètement et toune en rond ...

    Même un plugin "HR" qui devrait être simple a décortiquer est enregistré de façon à ce que le code soit illisible (tout sur une ligne)

    C'est une volonté de ne pas mettre en avant la méthode de développement sur JCE ou est-ce uniquement pour les version pro ? Sur TinyMCE c'est bien expliqué sur leur site

    Ou alors je passe mon temps à chercher à côté des infos ...

    Si quelqu'un a des pistes

    Excellente journée

    Olivier

  • #2
    salut
    si tout est sur une ligne, c'est que tu as la version compressée du fichier, tu dois avoir une version "uncompressed" ou un truc du genre
    La question est : veux-tu faire un plugin spécifique à l'éditeur, ou un plugin de type "editors-xtd" pour ajouter un bouton dans l'éditeur ?
    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


    • #3
      Salut,

      merci pour la réponse, oui effectivement je voudrais ajouter un bouton supplémentaire pour pouvoir intégrer du code spécifique

      [edit] . un petit espoir ici : https://github.com/widgetfactory/jce-custom (!)

      Olivier
      Dernière édition par krak69 à 18/10/2017, 17h05

      Commentaire


      • #4
        en fait il faut que tu cherches des tutos sur les plugins "editors-xtd" de joomla!
        il en existe, il te suffit de regarder comment il sont faits (readmore, pagebraek, image ...etc)
        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


        • #5
          JCE est déjà riche comme éditeur.
          Je l'utilise depuis des années.
          C'est pas trop indiscret de te demander quel type de plugin tu comptes créer ?
          Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.- "ça dépend ça dépasse"
          Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
          Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

          Commentaire


          • #6
            Non, il n'y a rien d'indiscret ,

            j'utilise "Simple Image Galery" pour permettre à mes utilisateurs de créer des galeries d'images simplement en créant un nouveau sous dossier et en mettant le lien {galery}images/galleries/20171019-MaGallerie{/galery}.

            Je voudrait créer un bouton qui me permet de choisir la galerie dans les répertoires utilisateur et d'insérer la balise{galery}{/galery}

            Je ne sais pas si c'est le moyen le plus simple, mais ...

            .. et en plus ça m'intéresse de savoir comment créer un plug-ins pour JCE

            Commentaire


            • #7
              Je dois avouer que je m'y perds un peu .. si je comprends bien, les "editors-xtd" sont les plugins qui affichent les bouton "Joomla!" en dessous de l'éditeur, que ce soit TinyMCE ou JCE.

              Ce que je cherche à faire, c'est d'ajouter des boutons directement dans la barre d'outils de JCE (en Javascript uniquement, en tout cas pour TinyMCE c'est uniquement du js)

              Pour TinyMCE c'est une fichier de type dans un répertoire, par exemple ici "gomydiv" :

              Code:
               tinymce.PluginManager.add('gomydiv', function(editor, url) {    
              // Add a button that opens a window    
              editor.addButton('gomydiv', {       text: 'Mon Plugin',
              ....
              etc.
              Ensuite ou je charge dans le fichier de config de TinyMCE, dans la liste des plugins (utilisation en dehors de Joomla)

              Code:
              [COLOR=#9cdcfe]tinymce[/COLOR][COLOR=#d4d4d4].[/COLOR][COLOR=#dcdcaa]init[/COLOR][COLOR=#d4d4d4]({[/COLOR]
              [COLOR=#9cdcfe]selector:[/COLOR][COLOR=#ce9178]"textarea"[/COLOR][COLOR=#d4d4d4],[/COLOR]
              [COLOR=#9cdcfe]language:[/COLOR][COLOR=#ce9178]"fr_FR"[/COLOR][COLOR=#d4d4d4],[/COLOR]
              [COLOR=#9cdcfe]theme :[/COLOR][COLOR=#ce9178]"modern"[/COLOR][COLOR=#d4d4d4], [/COLOR]
              [COLOR=#9cdcfe]height:[/COLOR][COLOR=#b5cea8]500[/COLOR][COLOR=#d4d4d4],[/COLOR]
              [COLOR=#9cdcfe]plugins:[/COLOR][COLOR=#d4d4d4] [[/COLOR]
              [COLOR=#ce9178]"advlist autolink autosave link image lists charmap print preview hr anchor pagebreak"[/COLOR][COLOR=#d4d4d4],[/COLOR]
              [COLOR=#ce9178]"searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking"[/COLOR][COLOR=#d4d4d4],[/COLOR]
              [COLOR=#ce9178]"table contextmenu directionality emoticons template textcolor paste textcolor colorpicker textpattern [B]gomydiv[/B]"[/COLOR]
              [COLOR=#d4d4d4]],[/COLOR]

              c'est plutôt ce style de boutons que je cherche à faire, ainis , je pensais pouvoir utiliser les profils JCE pour afficher ou pas mon (mes) bouton(s)


              Commentaire


              • #8
                Envoyé par krak69 Voir le message
                Non, il n'y a rien d'indiscret ,

                j'utilise "Simple Image Galery" pour permettre à mes utilisateurs de créer des galeries d'images simplement en créant un nouveau sous dossier et en mettant le lien {galery}images/galleries/20171019-MaGallerie{/galery}.

                Je voudrait créer un bouton qui me permet de choisir la galerie dans les répertoires utilisateur et d'insérer la balise{galery}{/galery}

                Je ne sais pas si c'est le moyen le plus simple, mais ...

                .. et en plus ça m'intéresse de savoir comment créer un plug-ins pour JCE
                Le plugin Simple Image Gallery Extended propose un plugin bouton qui fait ça
                Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.- "ça dépend ça dépasse"
                Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
                Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

                Commentaire


                • #9
                  Tiny intègre les plugins editors-xtd directement dans sa barre d'outils, contrairement à JCE qui est resté sur une ancienne version de Tiny et qui continue d'avoir les boutons à part (dommage !)
                  perso je crée toujours un plugin editors-xtd. Après tu fais comme tu veux
                  la soluce à Dol est pas mal non plus...
                  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
                    Bonjour,
                    Je te propose de télécharger l'extension que nous développons en ce moment sur nextgeneditor.com

                    dans le zip tu trouveras des plugins qui ajoute un bouton dans JCE 2.5 ou 2.6 dans /media/editors

                    ce plugin met un bouton dans les barres d'outils JCE, il ouvre une boite de dialogue qui appelle un controller pour ramener des infos,

                    et il y a aussi une fakeimage

                    en espérant que cela pourra t'aider.


                    d'un autre coté, en faisant un bouton editor-xtd, celui ci est du coup dispo pour tous les éditeurs avec un seul code source

                    Commentaire


                    • #11
                      Je vous remercie pour toutes vos infos ... je vais les tester et les comparer (chouette ce week-end il pleut )

                      Commentaire


                      • #12
                        Bon je crois que je vais passer ma bécane par la fenêtre ...

                        Dans le répertoire "Joomla\components\com_jce\editor\tiny_mce\plugins " , j'ai un dossier nommé "hr" , que je soupçonne grandement d'être le plugin qui me fait des "<hr />" et qui me semble assez simple pour me faire la main.

                        Je le remplace par une version non compilée trouvée sur Github pour avoir accès au code.

                        Si je supprime ce dossier du répertoire plugin : le bouton de la commande <hr> disparait , je me dit c'est bon , c'est le bon fichier !

                        Je le remets en place, le bouton revient ... toujours OK

                        Dans le code du fichier js "editor_plugin.js" je trouve en ligne 64 le code :

                        Code:
                         [COLOR=#9cdcfe]ed[/COLOR][COLOR=#d4d4d4].[/COLOR][COLOR=#dcdcaa]execCommand[/COLOR][COLOR=#d4d4d4]([/COLOR][COLOR=#ce9178]'mceInsertContent'[/COLOR][COLOR=#d4d4d4], [/COLOR][COLOR=#569cd6]false[/COLOR][COLOR=#d4d4d4], [/COLOR][COLOR=#ce9178]'<hr />'[/COLOR][COLOR=#d4d4d4]);[/COLOR]
                        que je remplace par :

                        Code:
                        [COLOR=#9cdcfe]ed[/COLOR][COLOR=#d4d4d4].[/COLOR][COLOR=#dcdcaa]execCommand[/COLOR][COLOR=#d4d4d4]([/COLOR][COLOR=#ce9178]'mceInsertContent'[/COLOR][COLOR=#d4d4d4], [/COLOR][COLOR=#569cd6]false[/COLOR][COLOR=#d4d4d4], [/COLOR][COLOR=#ce9178]'Hello word'[/COLOR][COLOR=#d4d4d4]);[/COLOR]
                        j'ai toujours des "<hr />...

                        si je mets un gros n'importe quoi dans le code histoire de le faire planter ... il me mets toujours des <hr /> .. j'ai purgé le cache ( je ne sais pas pourquoi mais des fois que ..) , cherché des autres dossiers "hr" (je modifie également celui de base de TinyMCE dans "joomla\media\editors\tinymce\plugins" ) sans plus de succès ....

                        C'est ou que je coince ? des idées ?

                        Bonne soirée


                        Commentaire


                        • #13
                          Voir JoomlaRoot\plugins\editors-xtd\readmore\ pour un plugin utilisant que du javascript.
                          Pour tinyMce JoomlaRoot/media/editors/tinymce/plugins/ est le répertoire poir ajouter ces propres plugins et il faut l'ajouter dans les plugins :
                          Plug-ins : Éditeur - TinyMCE> Paramètres avancés > Plug-in personnalisé
                          Entrez le nom du répertoire dans le champs (par example : simplegalery).
                          Par contre pour JCE, je sais pas exactement comment ajouter le plugin sous forme de bouton mais il doit avoir une fonction similaire
                          http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                          http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                          Commentaire


                          • #14
                            pour tinymce, ajoutes example comme plugin personnalisé.
                            et cela te fourniras une base pour ton script.
                            Le dossier example est a dupliquer sous un autre nom et à activer ensuite.

                            Utilise un plugin editeur etendu (xtd editor) uniquement pour des fonctions joomla ou tu as besoin de code php.

                            Commentaire


                            • #15
                              Bonsoir,

                              merci pour vos réponses. Pour ce qui est de TinyMCE, j'arrive a créer des plugins simples sans trop de souci, pour les xtd-editor aussi, c'est vraiment pour JCE que je séche ...

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X