YOU ARE DOWNLOADING DOCUMENT

Please tick the box to continue:

Transcript
Page 1: "Un module Prestashop, comment ca marche?"

Un module Prestashop, comment ca marche ?

Page 2: "Un module Prestashop, comment ca marche?"

Prestashop ?‡ Solution Open-Source

‡ PHP5/MySQL5

‡ Système de modules (PHP/Smarty)

Page 3: "Un module Prestashop, comment ca marche?"

Système de hooks‡ Points d’ancrage

‡ 85 hooks dans Prestashop 1.4.5

‡ On peut en rajouter grâce à la surcharge !

Page 4: "Un module Prestashop, comment ca marche?"

Structure des fichiers‡ Fichiers PHP

‡ Templates Smarty (.tpl)

‡ Feuilles de style, Javascript et

images

Page 5: "Un module Prestashop, comment ca marche?"

Surcharge

« On peut tout surcharger…

… sauf les fichiers

PHP ! »

Page 6: "Un module Prestashop, comment ca marche?"

Structure du code‡ Classe PHP

‡ Dérive de la classe Module

‡ Nom unique

Page 7: "Un module Prestashop, comment ca marche?"

Déclaration variables‡ Nécessaire si on veut les utiliser

plus tard

‡ Pré-remplies (ou pas) :public $variable_vide;public $variable_remplie = ‘valeur’;

Page 8: "Un module Prestashop, comment ca marche?"

Squelette d’un module‡ Des fonctions obligatoires :

O construct()O install()

‡ Des fonctions facultatives :O uninstall()O getContent()O displayForm()O hookX()

Page 9: "Un module Prestashop, comment ca marche?"

construct()‡ Utilisée à chaque exécution du

module

‡ Définit le module (nom, description,

etc)

‡ Remplit les variables du module et

effectue les opérations nécessaires

Page 10: "Un module Prestashop, comment ca marche?"

install()‡ Exécutée une seule fois

‡ Relie le module aux hooks

‡ Effectue toute opération nécessaire

(création de table, copie de fichiers,

etc.)

Page 11: "Un module Prestashop, comment ca marche?"

uninstall()‡ Facultative

‡ Exécutée au clic sur « Désinstaller »

‡ Effectue toute opération nécessaire

(suppression de table ou de fichiers,

etc.)

Page 12: "Un module Prestashop, comment ca marche?"

Hooks‡ Permettent de relier une action au

déclenchement d’un hook

‡ Peuvent s’appeler entre eux : A => B et

C => B

‡ Possible de les gérer via le B.O.

Page 13: "Un module Prestashop, comment ca marche?"

Fonctions communes‡ Permettent d’appeler une même

fonction depuis plusieurs hooks

‡ Allègent le code et le rendent +

lisible

Page 14: "Un module Prestashop, comment ca marche?"

Appels des templates‡ On indique le fichier à utiliser :

‡ Variables Smarty pré-remplies via

PHP…

…et récupérables dans les .tpl :

return $this->display(__FILE__, ‘module.tpl');

$smarty->assign(‘variable', $this->variable);

<p> {$variable} </p>

Page 15: "Un module Prestashop, comment ca marche?"

displayForm()‡ Utilisée pour le formulaire dans le

B.O.

‡ Pas d’affichage direct mais utilisation

de $output

‡ Pas de traitement des résultats

Page 16: "Un module Prestashop, comment ca marche?"

getContent()‡ Utilisée pour le traitement du formulaire

du B.O.

‡ Tout type d’opération (base de données,

etc)

‡ Affichage du résultat du traitement

Page 17: "Un module Prestashop, comment ca marche?"

Traduction‡ Pas de chaîne « en dur »

‡ Utilisation de $this->l(‘string’)

‡ Traduction via l’onglet dédié du B.O.

Page 18: "Un module Prestashop, comment ca marche?"

C’est qui, le barbu ?‡ Samy Rabih

Développeur PHP/JS

‡ O2Sources (Lyon)

‡ @fetard


Related Documents