Child pages
  • Fundamentals

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
maxLevel2
styledisc
printablefalse

Fundamentals

Concepts

Tip

You should be familiar with PHP and Object-Oriented Programming before attempting to write your own module.

PrestaShop was conceived so that third-party modules could easily build upon its foundations, making it an extremely customizable e-commerce software.

A module is an extension to PrestaShop that enables any developer to add the following:

  • Provide additional functionality to PrestaShop.
  • View additional items on the site (product selection, etc..).
  • Communicate with other e-commerce services (buying guides, payment platforms, logistics...)
  • etc...

The company behind PrestaShop provides more than 100 modules for free with the tool itselfPrestaShop's customization is based on three possibilities:

  • Themes,
  • Modules,
  • Overriding.

Themes are explored in full in the Design Guide: http://doc.prestashop.com/display/PS15/Designer+Guide.
Modules and the override system are explored in this Developer Guide, starting with the "Concepts" section below. You can learn more about each in the following chapters:

 

Info

By default, PrestaShop is provided with more than 100 modules, enabling you to launch your online business quickly and for free.

More than

...

2000 modules are also available at the official add-ons site.
These additional modules were built by the PrestaShop company or members of the PrestaShop community, and are sold at affordable prices.
As a developer, you can also share your modules on this site, and receive 70% of the amounts associated with the sale of your creations. Sign up now!

Concepts

Tip

You should be familiar with PHP and Object-Oriented Programming before attempting to write your own module.

A module is an extension to PrestaShop that enables any developer to add the following:

  • Provide additional functionality to PrestaShop.
  • View additional items on the site (product selection, etc.).
  • Communicate with other e-commerce services (buying guides, payment platforms, logistics, etc.).
  • etc.

Overriding is a system in itself. PrestaShop uses completely object-oriented code. One of the advantages of this is that, with the right code architecture, you can easily replace or extend parts of the core code with your own custom code, without having to touch the core code. Your code thus overrides the core code, making PrestaShop behave as you prefer it to.

PrestaShop's technical architecture

...

This is the same principle as the Model–view–controller Model–View–Controller (MVC) architecture, only in a simpler and more accessible way.

Our developer team chose not to use a PHP framework, such as Zend Framework, Symfony or CakePHP, so as to allow for better readability, and thus faster editing.
This also makes for better performances, since the software is only made of the lines of code it requires, and does not contain a bunch of supplemental generic libraries.

...