PrestaShop 1.5 – Les bonnes pratiques de développement et les changements majeurs

0
98

Cet article inaugure une toute nouvelle section sur le UnderNews : le développement Web ! L’excellente solution dédiée au e-commerce PrestaShop ouvre le bal. Découvrez les bonnes pratiques de développement et les changements majeurs de la version 1.5.

Que de nouveautés pour ce nouveau cru ! Oublions le code HTML dans les fichiers PHP, maintenant tout est géré via Smarty V3. Le front office et le back office sont maintenant totalement gérés via MVC et possèdent tous deux des contrôleurs dédiés.Le système d’override est plus affiné que jamais et permet de modifier PrestaShop selon ses désirs les plus fous sans impacter le cœur et les mises à jour officielles, que du bonheur !

Pour les développeurs de la communauté, ce qui est a noter, c’est la disparition des multiples variables globales qui avaient tendances à être envahissantes. Elles sont toujours utilisables dans la 1.5 pour garder un minimum de compatibilité avec les anciens modules mais vont disparaître dans la prochaine version majeur, soit dans la 1.6. Ces fameuses variables globales ont été remplacées avantageusement par le Context. Voici des exemples concrets :

Avec PS 1.4 =>

global $cookie;
$language_id = $cookie->language_id;

Avec PS 1.5 =>

$language_id = $this->context->language->id;

Tous les objets sont donc accessibles via le Context (customer, shop, language, currency, etc).

Le nouveau thème squelette est mieux organisé et plus moderne. Le mode multi-boutique tant attendu est bien fonctionnel et à la hauteur des espérances ! Bravo à toute l’équipe, c’est vraiment du beau boulot.

Les modules ont maintenant une structure bien définie à respecter avant de les distribuer sur Addons, la place de marché de PrestaShop. En voici le détail :

/ Racine du module

/controllers Accueille les Controllers de back office et de front office

/views Accueille les vues Smarty pour les Controllers ainsi que les hooks

/css Accueille les fichiers de style

/js Accueille les fichiers JavaScript

/override Accueille les overrides qui seront copiés lors de l’installation du module (puis ./classes, ./controllers/front, ./controllers/admin)

/*.php Les fichiers PHP principaux du module

Pensez aussi multi-boutiques pour vos modules ! N’hésitez pas à les adapter et les tester afin qu’ils puissent être utilisés dans l’environnement multi-sites de PrestaShop 1.5, avec une configuration individuelle sur chaque boutique du système.

Impossible de mettre toutes les nouveautés ici, cela serait beaucoup trop long. Autant voir les choses une à une. Sachez qu’il peut être avantageux de rendre ses modules compatibles 1.5 au plus vite pour être prêt pour la sortie de la version finale. Mais avez-vous pensé à la rétro-compatibilité ? Ce sera justement le sujet de notre prochain article !