Intégrer un bouton like dans l'éditeur-xtd

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

  • [RÉGLÉ] Intégrer un bouton like dans l'éditeur-xtd

    Bonjour,

    j'essaie de créer un mini plugin permettant l'ajout d'un bouton supplémentaire dans l'éditeur de Joomla 3.4

    likebutton.xml
    Code PHP:
    <?xml version="1.0" encoding="utf-8"?>
    <extension version="2.5" type="plugin" group="editors-xtd" method="upgrade">
        <name>plg_editors-xtd_likebutton</name>
        <creationDate>03/03/2015</creationDate>
        <author>djphil</author>
        <copyright>Copyright 2015 Digital Concepts All rights reserved!</copyright>
        <authorEmail></authorEmail>
        <authorUrl></authorUrl>
        <license></license>
        <version>0.0.1</version>
        <description>PLG_EDITORS-XTD_LIKEBUTTON_XML_DESCRIPTION</description>
        <files>
            <filename plugin="likebutton">likebutton.php</filename>
        </files>
        <languages>
            <language tag="en-GB">en-GB.plg_editors-xtd_likebutton.ini</language>
            <language tag="en-GB">en-GB.plg_editors-xtd_likebutton.sys.ini</language>
            <language tag="fr-FR">fr-FR.plg_editors-xtd_likebutton.ini</language>
            <language tag="fr-FR">fr-FR.plg_editors-xtd_likebutton.sys.ini</language>
        </languages>
        <config />
    </extension>
    likebutton.php
    Code PHP:
    <?php
    /**
     * Like Button - Joomla Editor System
     *
     * @version 0.0.1
     * @package Like Button
     * @author djphil
     * @copyright (C) 2015 Digital Concepts
     * @license GNU/GPL: http://www.gnu.org/copyleft/gpl.html
     */

    defined('_JEXEC') or die;
    jimport('joomla.plugin.plugin');

    /**
     * Provides button to insert {like} into content edit box
     */
    class plgButtonLikebutton extends JPlugin
    {
        public function 
    __construct(& $subject$config)
        {
            
    parent::__construct($subject$config);
            
    $this->loadLanguage('plg_editors-xtd_likebutton'JPATH_ADMINISTRATOR);
        }

        function 
    onDisplay($name)
        {
            
    $getContent $this->_subject->getContent($name);
            
    $js "
                    function insertLikebutton(editor) {
                        var content = 
    $getContent
                        if (content.match(/{like}/)) {
                            return false;
                        } else {
                            jInsertEditorText('{like}', editor);
                        }
                    }
                    "
    ;

            
    $document JFactory::getDocument();
            
    $document->addScriptDeclaration($js);

            
    $button = new JObject();
            
    $button->set('class''btn');
            
    $button->set('modal'false);
            
    $button->set('onclick''insertLikebutton(\'' $name '\');return false;');
            
    $button->set('text'JText::_('PLG_EDITORS-XTD_LIKEBUTTON_BUTTON_LIKEBUTTON'));
            
    $button->set('name''thumbs-up');
            
    $button->set('link''#');

            return 
    $button;
        }
    }
    en-GB.plg_editors-xtd_likebutton.ini
    Code PHP:
    Like Button Joomla Editor Plugin System
    Copyright (C2015 Digital ConceptsAll rights reserved.
    License http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
    Note All ini files need to be saved as UTF-No BOM

    PLG_EDITORS
    -XTD_LIKEBUTTON="Button - Like button"
    PLG_EDITORS-XTD_LIKEBUTTON_BUTTON_LIKEBUTTON="Like"
    PLG_EDITORS-XTD_LIKEBUTTON_XML_DESCRIPTION="Provides a button for easy insertion of the {like} tag into articles." 
    en-GB.plg_editors-xtd_likebutton.sys.ini
    Code PHP:
    Like Button Joomla Editor Plugin System
    Copyright (C2015 Digital ConceptsAll rights reserved.
    License http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
    Note All ini files need to be saved as UTF-No BOM

    PLG_EDITORS
    -XTD_LIKEBUTTON="Button - Like button"
    PLG_EDITORS-XTD_LIKEBUTTON_XML_DESCRIPTION="Provides a button for easy insertion of the {like} tag into articles." 
    fr-FR.plg_editors-xtd_likebutton.ini
    Code PHP:
    Like Button Joomla Editor Plugin System
    Copyright (C2015 Digital ConceptsAll rights reserved.
    License http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
    Note All ini files need to be saved as UTF-No BOM

    PLG_EDITORS
    -XTD_LIKEBUTTON="Button - Like boutton"
    PLG_EDITORS-XTD_LIKEBUTTON_BUTTON_LIKEBUTTON="Like"
    PLG_EDITORS-XTD_LIKEBUTTON_XML_DESCRIPTION="Fournit un bouton pour faciliter l'insertion de la balise {like} dans les articles." 
    fr-FR.plg_editors-xtd_likebutton.sys.ini
    Code PHP:
    Like Button Joomla Editor Plugin System
    Copyright (C2015 Digital ConceptsAll rights reserved.
    License http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
    Note All ini files need to be saved as UTF-No BOM

    PLG_EDITORS
    -XTD_LIKEBUTTON="Button - Like boutton"
    PLG_EDITORS-XTD_LIKEBUTTON_XML_DESCRIPTION="Fournit un bouton pour faciliter l'insertion de la balise {like} dans les articles." 
    edit : Le plugin fonctionne!

    Merci pour votre aide !
    Fichiers joints
    Dernière édition par djphil à 10/03/2015, 23h16 Raison: bug fix
    Visit Digital Concepts - Salles de Chat 3D - DigiGrids @ http://digitalconcepts.free.fr/

  • #2
    Re : Intégrer bouton dans l' éditeur

    salut
    si tu as une page blanche c'est que tu as une erreur fatale et que ton niveau d'affichage d'erreurs est trop bas

    vas dans la config de ton site >> serveur >> niveau d'erreur et passes le à développement jusqu'à ce que ton plugin soit fini
    tu devrais voir l'erreur s'afficher
    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
      Re : Intégrer bouton dans l' éditeur

      slt,

      puis-je conclure par ta réponse que tu as regardé le code et que tu n'y a pas trouvé d'erreur ?

      le debug me dit :
      Code:
      Strict Standards: Only variables should be assigned by reference in .\plugins\content\flike\flike.php on line 31
      Il semble entrer en conflit avec un autre plugin (fblike).
      Visit Digital Concepts - Salles de Chat 3D - DigiGrids @ http://digitalconcepts.free.fr/

      Commentaire


      • #4
        Re : Intégrer bouton dans l'éditeur

        bizarre que tu n'ais que ça comme erreur
        déjà je vois que ta classe n'a pas le meme nom que ton plugin apparemment
        class plgButtonJCommentsOn
        <name>plg_editors-xtd_likebutton</name>
        faut choisir, et mettre tous les noms identiques
        mais si ça fait planter ton site en page blanche c'est qeu tu as une erreur fatale à quelque part...
        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
          Re : Intégrer bouton dans l'éditeur

          Après avoir effectué la modification de class la page s'affiche correctement (en mode édition d'article) mais le bouton n'apparaît pas.

          Après quelques recherches, je constate qu'il faut des fichiers langues additionnelles.
          Sur base de ceux de Jcomment (ON/OFF), je crée ceux pour le bouton like (joint au 1er post de cette discussion).

          Je vois que mes fichiers fonctionnent coté admin.
          (la description du plugin s'affiche bien en rapport avec la traduction des fichiers que j'ai crées).

          Mais toujours pas de bouton qui apparaît en mode édit d'article ...

          Qu'ai-je oublié ?

          PS: Il n'y a plus de message d'erreur en mode débug maintenant.
          Visit Digital Concepts - Salles de Chat 3D - DigiGrids @ http://digitalconcepts.free.fr/

          Commentaire


          • #6
            Re : Intégrer bouton dans l'éditeur

            les fichiers de langue n'empechent pas le plugin de fonctionner, c'est juste que les chaines ne sont pas traduites
            toujours dans la meme idée je vois
            class plgButtonLike
            plg_editors-xtd_likebutton
            la classe ne devrait pas être
            class plgButtonLikebutton
            ?
            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
              Re : Intégrer bouton dans l'éditeur

              Ok, donc toujours la class mal nomée ...
              Et effectivement ça fonctionne maintenant

              Merci !

              PS : Quelle est la règle pour nommer une class ?
              Visit Digital Concepts - Salles de Chat 3D - DigiGrids @ http://digitalconcepts.free.fr/

              Commentaire


              • #8
                Re : Intégrer un bouton like dans l'éditeur-xtd

                cool
                PS : Quelle est la règle pour nommer une class ?
                pour un plugin :
                plg[Type][Nom]

                il suffit de regarder comment sont fait les autres plugins, généralement ça aide bien
                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 : Intégrer un bouton like dans l'éditeur-xtd

                  pour un plugin :
                  plg[Type][Nom]
                  Ok, merci!

                  Quant à la concordance nom / class qui était la cause du problème, je constate que la case n'est pas respectée (likebutton / Likebutton).

                  il suffit de regarder comment sont fait les autres plugins, généralement ça aide bien
                  C'est exactement ce que j'ai fais
                  Visit Digital Concepts - Salles de Chat 3D - DigiGrids @ http://digitalconcepts.free.fr/

                  Commentaire

                  Annonce

                  Réduire
                  Aucune annonce pour le moment.

                  Partenaire de l'association

                  Réduire

                  Hébergeur Web PlanetHoster
                  Travaille ...
                  X