Book Image

Practical Module development for Prestashop 8

By : Louis AUTHIE
Book Image

Practical Module development for Prestashop 8

By: Louis AUTHIE

Overview of this book

After version 1.7, PrestaShop underwent a host of changes, including migration to a Symfony-based system from an outdated legacy code. This migration brought about significant changes for developers, from routine maintenance to module development. Practical Module Development for PrestaShop 8 is curated to help you explore the system architecture, including migrated and non-migrated controllers, with a concise data structure overview. You’ll understand how hooks enable module customization and optimize the CMS. Through the creation of seven modules, you’ll learn about the structure of modules, hook registration, the creation of front-office controllers, and Symfony back-office controllers. By using Doctrine entities, services, CQRS, grids, and forms, you’ll be guided through the creation of standard, payment and carrier modules. Additionally, you'll customize and override themes to achieve your desired e-commerce store look. By the end of this book, you’ll be well equipped to provide modern solutions with PrestaShop that meet client requirements.
Table of Contents (23 chapters)
Part 1 – Understanding How PrestaShop is Structured and How It Works
Part 2 – How to Create Your Own Modules
Part 3 – Customizing Your Theme
Appendix – Module Upgrade, The Hooks Discovery Tool, and Multi-Store Functions

Presenting the most useful hooks to extend a form and handle it

Before we get into module design and creation, since finding the best hook for our needs can sometimes be tricky, let’s perform reverse engineering on the form building and form handling aspects to identify the hooks we want to register our module to. We will then explore the Category ObjectModel class to find the right hook to clean our created content on Category deletion.

We will divide our hook exploration into three parts while following our targets:

  • Extending the Category Symfony-based form on the BO Category controller by adding three fields to it
  • Handling new input from the extended form for both creation and edition modes
  • Cleaning our extended fields database stored content on Category deletions

Let’s get into the first target and learn how to find the best hook for our Category form extension.

Extending the Category Symfony-based form on the BO Category controller