28 nov. 2022 | Connexion

Blog

Intégrer CKEditor dans EasyAdmin

Intégrer CKEditor dans EasyAdmin

Développement web
Symfony PHP

il y a 7 mois citizenz7 2 commentaires 1599 lectures

Installation d'EasyAdmin :

composer req admin


Installation de CKEditor :

composer require friendsofsymfony/ckeditor-bundle


Configuration simple et rapide de CKEditor.
Dans le fichier config/packages/fos_ckeditor.yaml :

fos_ck_editor:
    configs:
        main_config:
            toolbar: full


"Activation" du dashboard d'EasyAdmin :

php bin/console make:admin:dashboard


Dès maintenant vous aurez un nouveau dossier dans src/Controller/Admin avec un fichier DashboardController.php

Vous pourrez également créer des CRUD avec la commande :

php bin/console make:admin:crud


Dans ces CRUD, vous pourrez désormais utiliser ->setFormType(CKEditorType::class) pour "activer" CKEditor sur les champs TextEditorField() :
EXEMPLE :

TextEditorField::new('content')->hideOnIndex()->setFormType(CKEditorType::class),


N'oubliez pas le Use :

use FOS\CKEditorBundle\Form\Type\CKEditorType;


Sous la function configureFields() du CrudController, ajoutez :

public function configureCrud(Crud $crud): Crud
{
  return $crud
      ->addFormTheme('@FOSCKEditor/Form/ckeditor_widget.html.twig');
}


Et voila : CKEDitor est activé dans EasyAdmin !

2 commentaires


Horn, le 13-11-2022 à 15:16:21

Bonjour, Il manque l'installation des assets dans votre procédure. Sinon moi j'ai un pb avec ckeditor lors de la validation du texte ça m'affiche le texte avec toutes les balises... Je suis sur symfony6 et easyAdminBundle

citizenz7, le 13-11-2022 à 16:39:31

@Horn, Salut, Pour les assets : le but n'était pas ici de présenter l'install complète de CKEditor mais sa configuration dans Easyadmin. Pour ce qui est des balises et du texte, c'est normal. CKEditor ajoute des balises HTML type <p>, <div>, etc. Pour l'affichage dans la vue (fichier twig), il faut utiliser le filtre twig |raw Exemple : {{ article.presentation|raw }}

Nb d'articles actifs : 40 | Nb de commentaires : 16 | Nb de catégories : 7 | Nb de tags : 32 | Nb total de lectures : 118 938
2022 citizenz.info • Some rights reserved GPLv3 • Version 3.3.4

Vous, vous avez une idée derrière la main, j'en mettrais ma tête au feu ! (Kaamelott, Livre V, Perceval de Sinope)