"Un module Prestashop, comment ca marche?"

3 005 vues

Publié le

En moins d'une vingtaine de slides, petit tour rapide des principaux composants d'un module Prestashop.

Présenté le 24 novembre 2011 au Barcamp Prestashop (Espace Tapis Rouge 75010 PARIS)

Cette mini-conférence sera également présentée lors du prochain apéro Prestashop Lyon mi-décembre (lieu non encore déterminé).

Publié dans : Technologie
1 commentaire
1 j’aime
Statistiques
Remarques
  • Cette mini-conférence sera également présentée lors du prochain apéro Prestashop Lyon mi-décembre (lieu non encore déterminé).
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
Aucun téléchargement
Vues
Nombre de vues
3 005
Sur SlideShare
0
Issues des intégrations
0
Intégrations
47
Actions
Partages
0
Téléchargements
23
Commentaires
1
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

"Un module Prestashop, comment ca marche?"

  1. 1. Un modulePrestashop, comment ca marche ?
  2. 2. Prestashop ?‡ Solution Open-Source‡ PHP5/MySQL5‡ Système de modules (PHP/Smarty)
  3. 3. Système de hooks‡ Points d’ancrage‡ 85 hooks dans Prestashop 1.4.5‡ On peut en rajouter grâce à la surcharge !
  4. 4. Structure des fichiers‡ Fichiers PHP‡ Templates Smarty (.tpl)‡ Feuilles de style, Javascript et images
  5. 5. Surcharge« On peut tout surcharger< < sauf les fichiers PHP ! »
  6. 6. Structure du code‡ Classe PHP‡ Dérive de la classe Module‡ Nom unique
  7. 7. Déclaration variables‡ Nécessaire si on veut les utiliser plus tard‡ Pré-remplies (ou pas) : public $variable_vide; public $variable_remplie = ‘valeur’;
  8. 8. Squelette d’un module‡ Des fonctions obligatoires : O construct() O install()‡ Des fonctions facultatives : O uninstall() O getContent() O displayForm() O hookX()
  9. 9. 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
  10. 10. 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.)
  11. 11. uninstall()‡ Facultative‡ Exécutée au clic sur « Désinstaller »‡ Effectue toute opération nécessaire (suppression de table ou de fichiers, etc.)
  12. 12. 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.
  13. 13. Fonctions communes‡ Permettent d’appeler une même fonction depuis plusieurs hooks‡ Allègent le code et le rendent + lisible
  14. 14. Appels des templates‡ On indique le fichier à utiliser : return $this->display(__FILE__, ‘module.tpl);‡ Variables Smarty pré-remplies via PHP< $smarty->assign(‘variable, $this->variable); <et récupérables dans les .tpl : <p> {$variable} </p>
  15. 15. displayForm()‡ Utilisée pour le formulaire dans le B.O.‡ Pas d’affichage direct mais utilisation de $output‡ Pas de traitement des résultats
  16. 16. 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
  17. 17. Traduction‡ Pas de chaîne « en dur »‡ Utilisation de $this->l(‘string’)‡ Traduction via l’onglet dédié du B.O.
  18. 18. C’est qui, le barbu ?‡ Samy Rabih Développeur PHP/JS‡ O2Sources (Lyon)‡ @fetard

×