#liste_articles {display:block}

Intégrer un editeur WYSIWYG au plugin Crayons

mercredi 21 novembre 2007

 

Intégrer un editeur WYSIWYG au plugin Crayons

Bien qu’à prohiber dans la plupart des cas les solutions WYSIWYG HTML peuvent s’imposer exceptionnellement pour les besoins d’un projet ou d’un utilisateur particulier. Dans notre cas, des animateurs de projets artistiques ont besoin de mettre en forme des pages de consignes pour les classes de collège avec des couleurs et des polices différentes.

Habitués à l’édition du texte depuis la partie publique, j’ai intégré une solution ajoutant au champ des crayons un lien optionnel vers l’édition avec FckEditor :

  • Installer le plugin fckeditor de Thierry B et le plugin crayons de la zone
  • modifier le fichier /plugins/crayons/action/crayons_html.php de telle manière à intégrer un lien vers l’édition Wysiwyg en popup si fckditor est installé (lignes 245 -> 255) :
case 'texte':
        $name = 'content_'.$this->key.'_'.$champ;
        $input = '';
        foreach ($GLOBALS['plugins'] as $in1=>$val1) if ($val1=='fckeditor') $input = '<div align="center"><input type="button" value="Editeur WYSIWYG" onclick="window.open(\'plugins/fckeditor/fckeditor.html?idChamp='.$name.'\',\'_blank\',\'toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, copyhistory=0, menuBar=0, width=650, height=800\');"/></div>';
        $input .= '<textarea style="width:100%; " class="crayon-active"'
        . ' name="'.$name.'">'
        . entites_html($val)
        . "</textarea>\n"
        .'';
break;

Notes :

  • j’ai essayé de surcharger le fichier action/crayons_html.php dans fckeditor mais celui de crayon a la priorité.
  • voir plutôt pour une option d’intégration des différentes barres typographiques dans crayons via cfg en fonction des plugins installés.
  • continuer à utiliser les WYSIWYG HTML avec modération...

Documents :

par Patrick Vincent