Actualité web, solution Saas, CMS, eCommerce, Framework (Zend, Symfony, CSS), avec une pointe de SEO.

Prestashop creer une page custom

Prestashop est une solution eCommerce de qualité, vous disposez de multiple fonctionnalité native, des modules, des thèmes, etc … Mais comment ajouter « simplement » une page custom, partir de rien et créer votre propre page.
Nous allons voir comme réaliser notre controller front, pour y afficher du contenu.

Comment créer une page custom (1.5 / 1.6) :

  1. Créer le front controller : /override/controllers/front/EeweeController.php
  2. Créer le tpl : /themes/monTheme/eewee.tpl
  3. Back-office : / Préférences / SEO & URLs / Ajouter
  4. Supprimer le fichier : /cache/class_index.php
  5. Voir le résultat : monSite.ndd/eewee

Télécharger l’exemple de code source PrestaShop (ou sur GitHub).

Comment créer une page custom (1.7) :

  1. Créer le front controller : /override/controllers/front/EeweeController.php
  2. Créer le tpl : /themes/monTheme/templates/eewee.tpl
  3. Back-office : / Préférences / SEO & URLs / Ajouter
  4. Supprimer le fichier : /cache/class_index.php
  5. Voir le résultat : monSite.ndd/eewee

Télécharger l’exemple de code source PrestaShop (ou sur GitHub).

Et ensuite :

  • Il faut ensuite compléter votre controller front et .tpl
  • Cela vous permet d’obtenir une url spécifique pour PrestaShop, et de gérer un contenu custom sur une page personnalisée.

Cela donne quoi ? Une page custom PrestaShop :

01-FO-prestashop 02-FO-prestashop 03-FO-prestashop

Posté le 08 Jan 2016 par Michael
  • prestashop
  • Développeur / intégrateur, travaillant en agence web depuis 2005, je viens à présent vous proposer de venir découvrir mes créations personnelles de plugins / themes pour le CMS Wordpress & Prestashop, quelques solutions en mode SAAS & un peu d'actualité web.
    Auteur : Michael ( / Twitter )

    Commentaires publiés 9

    Posté par balphomet on
    • Déc 28 2016
    Répondre  
    Bonjour,

    Merci pour votre tutoriel que j'ai installé et qui fonctionne parfaitement. J'ai juste une question concernant la page qui s'affiche en front office une fois que tout est paramétré, à savoir il y a un menu à gauche ex : "meilleures ventes" sur la "copie écran" que vous avez ci dessus dans votre article. Comment peut-on supprimer cette colonne à gauche avec les différentes rubriques. "meilleures ventes", etc...ci joint la page de mon site prestashop avec le menu à gauche www.artist-in-the-box.com/souscription.

    Merci par avance pour votre aide.
      Posté par Michael on
      • Déc 28 2016
      Répondre  
      Bonjour Balphomet,
      De mémoire il doit y avoir une information dans le back-office / themes / options avancées.
      Cela doit afficher une liste de toutes les pages types, avec le choix des colonnes, il me semble.
      Dis-moi si c'est le cas, ou pas :)
        Posté par balphomet on
        • Jan 9 2017
         
        pour retirer la colonne de gauche il faut rajouter ce code dans le fichier controller.php
        public function init()
        {
        parent::init();
        $this->display_column_left = false;
        }
    Posté par balphomet on
    • Jan 9 2017
    Répondre  
    Bonjour,

    J'ai une autre question j'ai réussi à créer ma page et je voudrais en créer une deuxième. j'ai fais la même manipulation en créant un autre fichier controller et un autre fichier tpl. Par contre lorsque je veux afficher ma page j'ai ce message

    Fatal error: Class 'conceptController' not found in /home/cccpanda/artist-in-the-box.com/classes/controller/Controller.php on line 134

    PS : ci joint la première page qui s'affiche correctement
    artist-in-the-box.com/souscription

    Quelle est la démarche pour créer une seconde page ? (je précise que lors de la création de la seconde page je n'ai pas pu supprimer le fichier (/cache/class_index.php) car je l'avais fais lors de la création de la première page...
      Posté par Michael on
      • Jan 9 2017
      Répondre  
      Tu dois supprimer le fichier /cache/class_index.php à chaque fois que tu fais une création d'une nouvelle class.
      Il sera créé de nouveau automatiquement en mettant à jour les "class" de PrestaShop.
    Posté par Nicolas Négrier on
    • Fév 1 2017
    Répondre  
    Donnez un cookie à cet homme ! Son article de qualité à sauvé une vie aujourd'hui, merci !
      Posté par Nicolas Négrier on
      • Fév 1 2017
      Répondre  
      Cependant j'aurai tout de même une question, sais-tu pourquoi dans le "fil d'ariane" le nom de la page custom n'apparait pas, et sais-tu comment y remédier, s'il te plait ?
        Posté par Michael on
        • Fév 1 2017
         
        Non je ne sais pas malheureusement.
        Il faudra que je me regarde cela, lorsque j'aurai un peu de temps ;)
        Posté par Nicolas Négrier on
        • Fév 2 2017
         
        Bon, après quelques recherches sur le forum de PrestaShop, j'ai trouvé ceci fonctionnait parfaitement :

        {capture name=path}

        {l s='Nom de page'}

        {/capture}

        ... Par contre je ne sais pas comment ni pourquoi ça fonctionne ^^'

    Écrivez-nous

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