Tips for PrestaShop 1.7 Pre-order and Waiting List Module

Aug 29, 2018292Dmitry Urbanovich
Tips for PrestaShop 1.7 Pre-order and Waiting List Module

In this article, we will talk about a module that has been used for a long time by more than a thousand online stores — Pre-order and Waiting List Module. With the release of CMS PrestaShop 1.7, we started rewriting the modules for this version of the platform. Today I’ll tell you about the difficulties I encountered when developing the module for this version of PrestaShop.

Difficulty #1 was the fact that the product page on the administrative part of the platform was rewritten for Symfony. And now for the purpose of modules’ data preservation, we will have to create a separate entity in which we will store the data of the module and its controller, which will process this data and store it in the entity.

I started with defining the values that should be stored in the database and got down to creating the entity:

Here everything remains unchanged compared to the 1.6.x version. The first two lines in the constructor are needed for the operation of an entity with a multistore.

Now we move on and create a controller:

class AdminPreorderProductController extends ModuleAdminController

This is the beginning of the Ajax territory. Now developers have to use various handlers for each operation on the admin side, which is a little more complicated than it used to be in PrestaShop 1.6. The main techniques while working with product settings are try catch and json constructions. But you are free to go your own path. May the force be with you!

The registration of the administrative controller is carried out using the Tab class, just like it used to be earlier:

pre-order function for separate products

Here is what we have as a result of all these manipulations:

Pre-order module for prestashop

The advantage of this approach is the speed of work with the product. The disadvantage — an increase in time spent to develop this functionality.

Unfortunately, the creation of custom pages remained unchanged, CMS developers promise to gradually move the rest of the functionality to Symfony. That is why the creation of the module settings page remained the same as in the 1.6.x version.

The back end for pre-order and waiting list module for prestashop 1.7

The module is fairly simple to use. As soon as a product is out of stock, it becomes possible to activate preorder and configure countdown. Here is what will be displayed on the frontend.:

Pre-order and waiting list module front end

You will see a “Pre-order” button, a “Notify” button (subscription to email notifications on the product availability) and the time when the product is due to be back in stock.

The administrator will be able to control the lists of subscribers and the products subscribed to, but the mailing and stock updating are automatic, the administrator will only have to control the supplies to the warehouse:

Pre-order and waiting list module for prestashop 1.7

The main feature of the module for this PrestaShop version is the ability to create your own email templates for the notifications on the received products:

Pre-order and waiting list module. Email templates creation

The functionality allows you to create templates for different product categories and for different groups of customers. It’s quite useful if you have a group of premium customers.

The Pre-order and Waiting List module encounter available in our PrestaShop store.



Post a new comment

top
BelVG Newsletter
Subscribe to our mailing list and get interesting stuff and updates to your email inbox.
Email *