Editeur HTML sur les catégories avec Prestashop 1.5

Bonjour à tous

Voici une petite astuce qui vous permettra de pouvoir placer du HTML sur vos catégories gratuitement et facilement 😉

Pour commencer, vérifiez que vous possédez un éditeur de code comme Notepad++ par exemple.

Tout est prêt ? Alors c’est parti 🙂

Éditez le fichier « /override/classes/Category.php » et insérez le code ci-dessous après le 1er { :

public static function getDescriptionClean($description){
    return stripslashes($description);
}

 

Vous pouvez enregistrer et fermer ce fichier, nous allons passer à la suite.
Cette modification nous permet de conserver les balises HTML mises en place dans le champ « Description » de la catégorie.

Maintenant, nous allons faire afficher l’éditeur HTML de prestashop (TinyMCE)  avec une seconde modification.

Editez maintenant le fichier « /override/controllers/admin/AdminCategoriesController.php », et insérez le code ci-dessous après le 1er { :

public function renderForm(){

        // exécute le code d'origine
        parent::renderForm();

        // remet le tableau du formulaire dans son état initial
        $this->fields_form = $this->fields_form[0]['form'];

        // on modifie le champ description pour lui ajouter l'éditeur HTML
        foreach($this->fields_form['input'] as &$input)
            if($input['name']=='description')
                $input['autoload_rte'] = true;

        // on relance le traitement d'origine du formulaire
        return AdminController::renderForm();
    }

Enregistrez et fermez ce fichier.

Vous pouvez maintenant envoyer les 2 fichiers modifiés sur votre site par FTP.
Pour cela, vous pouvez utiliser par exemple FileZilla.

Edit du 2/05/2013 : Il faut également supprimer le fichier : « /cache/class_index.php »
Celui ci conserve en cache les chemins des fichiers, et donc peut bloquer la prise en compte des modifications.

Une fois les fichiers en ligne, rendez-vous sur le backoffice de votre boutique prestashop, et éditez/créez une catégorie … et la vous bénéficiez dès à présent de l’éditeur HTML pour améliorer la présentation de vos catégories 😀

Edit du 26/02/2013 : L’éditeur est par défaut incomplet, il faut modifier les options dans le fichier :
/admin/themes/default/template/helpers/form/form.tpl => ligne 389

Edit du 16/04/2013 : Voici les fichiers prêts à l’emploi à installer dans le dossier override aux endroits respectifs (voir plus haut) : fichier.zip

A très bientôt pour d’autres astuces

27 réflexions au sujet de « Editeur HTML sur les catégories avec Prestashop 1.5 »

  1. Super génial pour la procédure claire et précise .Merci. Le seul mauvais point de cet éditeur est qu’il manque la taille des polices et que l’italique ne fonctionne pas.
    Vincent
    site en construction

  2. mille merci.

    Petite question.
    Saurais tu ou configurer l’éditeur.
    J’aimerais ajouter un bouton « more » à la facon wordpress, sur ces page de categorie?

  3. Hello !

    Merci pour l’astuce, cependant avec la version 1.5.4 cela semble ne plus fonctionner.

    Installation :
    /override/classes/Category.php
    /override/controllers/admin/AdminCategoriesController.php

    Merci !

    • Bonjour,

      Il faut supprimer le fichier : /cache/class_index.php
      Celui ci contient un « cache » des fichiers à charger.
      Je vais le préciser dans l’article.

  4. Bonjour

    Merci pour cette technique qui marche bien avec prestashop 1.5.4.1. En plus les fichiers sont fournis, nickel !

    Par contre serait-il possible de faire la même chose pour la description des catégories cms ? J’ai déjà activer le html en suivant les indications de cet article :
    http://www.prestashop-blog.com/2011/09/09/astuce-prestashop-1-4-x-comment-autoriser-des-balises-html-dans-les-descriptions/

    Il reste à ajouter l’éditeur

    Merci

    • Bonjour,
      Ravi de le lire 😉
      Pour les catégories CMS on me l’a déjà demandé, dès que j’ai un peu de temps libre je regarde pour faire un tutoriel sur cette partie.

  5. Salut !

    L’editeur fonctionne nickel, merci beaucoup !

    As-tu une petite astuce, qui me permettrai de ne pas afficher les balises HTLM sur le texte affiché lors du survol d’une catégorie ?!

    Merci.

    • Bonjour

      La balise « strip_tags » à ajouter dans le fichier tpl devrait suffire 🙂

      par exemple voici comment serait la variable en question :
      {$category->description|strip_tags}

      • Merci pour ta réponse Thomas,

        Si ce n’est pas trop demandé, pourrais-tu me préciser juste dans quel fichier tpl, je dois ajouter la balise « strip_tags » ?

        Merci

  6. Bonjour,

    avec ce code est il possible d’ajouter du texte différent en fonction de la catégorie?

    Et est-il possible de choisir où le texte va apparaitre ? Exemple : juste avant le footer.

    Un gros merci pour cette astuce !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *