Aller au contenu
PrestaSafe
  • Accueil
  • PrestashopDéplier
    • Présentation de Prestashop
    • Support et assistance pour Prestashop
    • Création de votre boutique de vente en ligne
    • Cartzilla, un thème PrestaShop Performant, Mobile et SEO
    • Migration PrestaShop
    • Maintenance technique pour site E-commerce PrestaShop
    • Prestations et maintenance site internet e-commerce PrestaShop
  • Blog
  • Devis en ligne
  • BoutiqueDéplier
    • Thèmes Prestashop
    • Modules PrestaShop
  • Mon compteDéplier
    • Programme d’affiliation PrestaSafe
Panier 0
Contact
PrestaSafe
PrestaShop solution e-commerce
ecommerce | prestashop

[TUTO] créer un modulefrontcontroller avec Prestashop

Parguillaume 20 septembre 201712 avril 2023

Comme vous le savez, avec Prestashop, vous avez la possibilité d’ajouter un point d’entrée (endpoint) depuis un module.

Pour cela il faut faire ce que l’on appel un ModuleFrontController.

Comment faire un Front Controller depuis un module Prestashop ?

La manipulation n’a rien de compliquée, j’ai du creuser un peu partout parce que la documentation officielle manque d’un peu de détails mais au final c’est très simple.

1 – votre module doit avoir un dossier /controllers/ puis à l’intérieur de celui-ci un dossier front (back pour le backoffice)

2 – Ajouter un fichier php que vous nommé comme vous le souhaitez (notre exemple: display.php)

3 – dans le display.php crééz une classe qui étends la classe ModuleFrontController

ex:


if (!defined('_PS_VERSION_'))
        exit;


class monmoduledisplayModuleFrontController extends ModuleFrontController
{

  public function __construct()
  {
    parent::__construct();
    
  }
  
  public function initContent()
  {
    parent::initContent();
    $this->setTemplate('account-controller.tpl');

  }


}
?>

EDIT:
Si vous êtes en PrestaShop 1.7, le `setTemplate` devra être comme ceci:


$this->setTemplate('module:monmodule/views/templates/front/account-controller.tpl');

désormais, votre module possède bien un front controller.

Voici l’architecture d’un module d’exemple:

Le nom de la classe doit absolument être composé comme tel:

{nomdumodule}{nomducontroller}ModuleFrontController

dans notre cas:

monmoduledisplayModuleFrontController

En ce qui concerne le template dans le initContent() on ajoute un template que vous devez placer dans:

/votremodule/views/templates/front/account-controller.tpl

Maintenant il ne vous manque plus qu’a avoir le lien de celui-ci, pour cela, utilisez la classe Link de PS:

avec smarty:

{$link->getModuleLink('nom_dossier_module','nom_fichier_php')}

donc:

{$link->getModuleLink('monmodule','display')}

avec php:

$this->context->link->getModuleLink('monmodule','display');

l’url est du type:

http://locahost/prestashop/module/monmodule/display

N’hésitez pas à poser vos questions en commentaire.

Enjoy 😉

Navigation de l’article

Précédent Précédent
Mettre Prestashop en mode debug (toutes versions)
SuivantContinuer
TUTO – Modifier le theme de prestashop 1.7

Publications similaires

  • PrestaShop solution e-commerce
    bug | ecommerce | prestashop

    Problème de création de compte client sur PrestaShop 1.7 et Google Chrome

    Parguillaume 16 décembre 202012 avril 2023

    Depuis quelques jours, certaines personnes rencontrent des problèmes avec PrestaShop en version 1.7 avec Google Chrome (version 87) en mode desktop (Ordinateur). À la création de compte client, une erreur est déclanchée Il s’agit d’une mise à jour de la part de Google afin de renforcer la sécurité sur les sites web. Si vous rencontez…

    Lire la suite Problème de création de compte client sur PrestaShop 1.7 et Google ChromeContinuer

  • PrestaShop solution e-commerce
    bug | ecommerce | prestashop

    [RÉSOLU] les bons de réductions ne s’affichent pas dans le compte client.

    Parguillaume 23 novembre 201712 avril 2023

    Bonjour à tous, Si comme moi vous n’avez pas les bons de réductions qui s’affichent dans le compte client mais bien dans la panier voici la solution. Corriger le bug de Prestashop En créant des bons de réductions, je me suis rendu compte qu’ils s’affichaient bien dans le panier et backoffice, mais quand je me…

    Lire la suite [RÉSOLU] les bons de réductions ne s’affichent pas dans le compte client.Continuer

  • PrestaSafe développeur freelance
    blog | Développement | ecommerce | prestashop

    Comment installer un thème PrestaShop ?

    Parguillaume 27 septembre 202112 avril 2023

    Découvrez dans cet article comment installer un thème pour votre boutique PrestaShop

    Lire la suite Comment installer un thème PrestaShop ?Continuer

  • PrestaShop solution e-commerce
    bug | prestashop

    Prestashop – comment corriger l’erreur des transporteurs « les tranches se chevauchent » ?

    Parguillaume 1 juin 201712 avril 2023

    Bonjour à tous, Dans cet article nous allons voir comment corriger l’erreur des tranches qui se chevauchent dans Prestashop 1.6. Vous allez voir qu’il n’est pas forcement obligatoire d’aller dans la base de données pour modifier tout ça. Comment corriger le problème ? Comme on peut l’apercevoir, on ne peux rien faire de plus si…

    Lire la suite Prestashop – comment corriger l’erreur des transporteurs « les tranches se chevauchent » ?Continuer

  • PrestaShop solution e-commerce
    blog | ecommerce | prestashop

    Supprimer le bouton « Imprimer » sur une fiche produits Prestashop

    Parguillaume 7 février 20188 mai 2023

    Il est parfois embêtant ce bouton « imprimer » sur les fiches produits du thème par défaut de Prestashop 1.6. On peut se dire qu’il s’agit d’un module à désactiver ou dégreffer, mais non.

    Lire la suite Supprimer le bouton « Imprimer » sur une fiche produits PrestashopContinuer

  • Interview par Maketing301
    blog | ecommerce | prestashop

    Interview par Maketing301

    Parguillaume 24 octobre 20188 mai 2023

    Bonjour à tous, Découvrez sans plus attendre notre interview réalisé par Johan de Marketing301.net

    Lire la suite Interview par Maketing301Continuer

Qui sommes nous ? Spécialiste dans la création de sites internet et notamment dans le e-commerce avec la solution Prestashop et Laravel. Nous intervenons depuis 2011 sur les sites de nos clients : configurations, migrations, développement web, SEO et webdesign sont les activités que nous exerçons tous les jours. Avec PrestaSafe, vous êtes en relation avec un réseau de passionnés qui connaissent leurs métiers.

  • Prestashop
  • E-commerce
  • Blog
  • Développement
  • Bug
  • Hébergement
  • WordPress
  • Sécurité
  • OctoberCMS
  • Non classé

Ressources

  • Contact
  • Support Technique
  • Maintenances technique
  • Mention légales
  • Devis en ligne
  • Conditions générales de vente
  • Politique de sécurité.

Suivez-nous

Facebook Twitter YouTube Linkedin

© 2025 PrestaSafe

Loading...
PrestaSafe
Gérer le consentement
Pour offrir les meilleures expériences, nous utilisons des technologies telles que les cookies pour stocker et/ou accéder aux informations des appareils. Le fait de consentir à ces technologies nous permettra de traiter des données telles que le comportement de navigation ou les ID uniques sur ce site. Le fait de ne pas consentir ou de retirer son consentement peut avoir un effet négatif sur certaines caractéristiques et fonctions.
Fonctionnel Toujours activé
L’accès ou le stockage technique est strictement nécessaire dans la finalité d’intérêt légitime de permettre l’utilisation d’un service spécifique explicitement demandé par l’abonné ou l’utilisateur, ou dans le seul but d’effectuer la transmission d’une communication sur un réseau de communications électroniques.
Préférences
L’accès ou le stockage technique est nécessaire dans la finalité d’intérêt légitime de stocker des préférences qui ne sont pas demandées par l’abonné ou l’internaute.
Statistiques
Le stockage ou l’accès technique qui est utilisé exclusivement à des fins statistiques. Le stockage ou l’accès technique qui est utilisé exclusivement dans des finalités statistiques anonymes. En l’absence d’une assignation à comparaître, d’une conformité volontaire de la part de votre fournisseur d’accès à internet ou d’enregistrements supplémentaires provenant d’une tierce partie, les informations stockées ou extraites à cette seule fin ne peuvent généralement pas être utilisées pour vous identifier.
Marketing
L’accès ou le stockage technique est nécessaire pour créer des profils d’internautes afin d’envoyer des publicités, ou pour suivre l’utilisateur sur un site web ou sur plusieurs sites web ayant des finalités marketing similaires.
  • Gérer les options
  • Gérer les services
  • Gérer {vendor_count} fournisseurs
  • En savoir plus sur ces finalités
Voir les préférences
  • {title}
  • {title}
  • {title}
  • Accueil
  • Prestashop
    • Présentation de Prestashop
    • Support et assistance pour Prestashop
    • Création de votre boutique de vente en ligne
    • Cartzilla, un thème PrestaShop Performant, Mobile et SEO
    • Migration PrestaShop
    • Maintenance technique pour site E-commerce PrestaShop
    • Prestations et maintenance site internet e-commerce PrestaShop
  • Blog
  • Devis en ligne
  • Boutique
    • Thèmes Prestashop
    • Modules PrestaShop
  • Mon compte
    • Programme d’affiliation PrestaSafe

Insérer/modifier un lien

Saisissez l’URL de destination

Ou alors, faites un lien vers l’un des contenus de votre site

    Aucun mot n’a été donné pour cette recherche. Voici les recherches précédentes. Recherchez ou utilisez les flèches haut et bas pour choisir un élément.
      Rechercher