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

  • Store commander
    ecommerce | prestashop

    Store Commander – Créez des produits en masse dans le catalogue

    Parguillaume 2 avril 202112 avril 2023

    Considérées comme l’or noir des e-marchands, les données peuvent parfois s’avérer difficiles à gérer au quotidien. Prenons l’exemple des imports/exports qui peuvent représenter une tâche fastidieuse dans votre back-office PrestaShop. Store Commander, qui s’occupe de bichonner vos données et faciliter votre travail au quotidien, vous permet, entre autres, d’importer/exporter aisément votre catalogue. Ainsi, la gestion…

    Lire la suite Store Commander – Créez des produits en masse dans le catalogueContinuer

  • PrestaShop solution e-commerce
    blog | ecommerce | hébergement | prestashop

    Prestashop – Impossible d’accéder au backoffice

    Parguillaume 9 octobre 20188 mai 2023

    Bonjour à tous, Ces derniers temps, PrestaShop rencontre quelques soucis avec leur API:

    Lire la suite Prestashop – Impossible d’accéder au backofficeContinuer

  • PrestaSafe développeur et ambassadeur PrestaShop
    Développement | ecommerce | hébergement | prestashop

    Améliorer les performances de sa boutique PrestaShop

    Parguillaume 21 octobre 202012 avril 2023

    Retrouvez toutes les astuces et les outils nécessaires dans ma conférence en ligne lors du PSD2020, afin d’améliorer les performances de votre boutique en ligne.

    Lire la suite Améliorer les performances de sa boutique PrestaShopContinuer

  • Créez des formulaires de contact facilement sur PrestaShop
    ecommerce | prestashop

    Créez des formulaires de contact facilement sur PrestaShop

    Parguillaume 12 septembre 202412 septembre 2024

    Dans cette vidéo, je vous montre comment intégrer facilement des formulaires de contact partout sur PrestaShop en utilisant les modules PrettyBlocks et ProBlocks, sans avoir besoin de coder. Je commence par expliquer la configuration nécessaire sur PrestaShop et l’utilisation de PrettyBlocks pour créer un formulaire personnalisé avec des champs comme nom, prénom, email et message….

    Lire la suite Créez des formulaires de contact facilement sur PrestaShopContinuer

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

    PrestaShop 1.7.7.X – faire fonctionner les envois d’emails

    Parguillaume 16 avril 202112 avril 2023

    Vos emails ne s’envoient depuis votre PrestaShop, du coup, cela implique que votre boutique est bloquée.
    Dans cet article nous vous expliquons tout.

    Lire la suite PrestaShop 1.7.7.X – faire fonctionner les envois d’emailsContinuer

  • PrestaShop solution e-commerce
    blog | bug | ecommerce | prestashop

    Installer prestashop avec mysql 5.7

    Parguillaume 17 novembre 201712 avril 2023

    Si vous rencontrez des erreurs, voici comment installer Prestashop (1.4 dans mon cas) avec mysql 5.7 Corriger les requêtes sql de l’installation de Prestashop Rendez vous dans le dossier /install/sql et modifiez le fichier db.sql Sous la première ligne : SET NAMES ‘utf8’; Rajoutez: SET NAMES ‘utf8’; SET sql_mode = « ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER »; Puis recherchez CREATE TABLE…

    Lire la suite Installer prestashop avec mysql 5.7Continuer

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

© 2026 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