Introduction aux plugins
Sommaire
Introduction
Thelia est une application modulaire pouvant être enrichie à l'aide de plugins.
Le plugin est un système qui permet d'ajouter proprement des fonctionnalités à Thélia et donc de pouvoir les intégrer proprement à chaque mise à jour. Il répond à des conventions propres à Thelia.
Types de plugins
Il existe 4 types de plugins :
- les plugins classiques permettent d'ajouter des actions, des boucles ...
- les plugins transports permettent d'ajouter un mode de transport
- les plugins paiement permettent d'ajouter un nouveau mode de paiement
- les plugins filtre (à partir de Thelia 1.5)
Tous ces plugins peuvent être enrichis d'une interface administrateur.
Composants d'un plugin
Un plugin est constitué au minimum :
- d'un répertoire étant le nom du plugin. Prenons un exemple simple. Un plugin nommé test. Nous aurions un répertoire test contenant le fichier Test.class.php
- une classe se nommant Nom.class.php. Le "Nom" de la classe est tout simplement le nom du plugin avec sa 1ère lettre en majuscule comme le fichier Test.class.php
- d'un fichier plugin.xml
Pour ajouter une gestion du plugin au niveau de l'interface d'administration, le code nécessaire se trouvera dans le fichier nom_admin.php
Le fichier plugin.xml situé dans le répertoire du plugin est tout simplement la carte d'identité du plugin. Voici un exemple :
<?xml version="1.0" encoding='UTF-8'?> <plugin> <nom>Alerte stock</nom> <version>1.0</version> <prefixe>alertstock</prefixe> <type>classique</type> <auteur>Yoan De Macedo - yoan@octolys.fr</auteur> <thelia>1.4.0</thelia> <description>Ce plugin vous avertira par mail lorsque le stock d'un produit sera inférieur à une quantité paramétrée.</description> <rubrique>administration</rubrique> <lien>http://contrib.thelia.fr/spip.php?article53</lien> <documentation>Readme.txt</documentation> <etat>production</etat> <install>http://contrib.thelia.fr/IMG/zip/alertstock.zip</install> </plugin>
Installation
- Le plugin sera installé dans le répertoire client/plugins de l'application Thelia.
- Il pourra être installé de manière autonome depuis l'interface d'administration. Il suffira pour cela de fournir un fichier zip à l'utilisateur. Notre plugin test deviendrait donc test.zip
Autres composants
Le plugin peut être aussi enrichi de plusieurs fichiers selon sa fonction :
- Un fichier Readme.txt qui explique comment l'installer, comment insérer une boucle dans une page...
- Un fichier template (test.html par exemple) qui est ajouté dans le dossier template à la racine, dans le cas d'un plugin qui ajoute une page dans le site.
- Le fichier php (test.php dans notre cas) n'est plus nécessaire depuis la version 1.5.