Introduction aux plugins

De TheliaDoc
Aller à : navigation, rechercher

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.

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.

Un plugin est constitué au minimum :

  • d'un répertoire étant le nom du plugin
  • une classe se nommant Nom.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 "Nom" de la classe est tout simplement le nom du plugin avec sa 1ère lettre en majuscule.

Prenons un exemple simple. Un plugin nommé test.
Nous aurions un répertoire test contenant le fichier Test.class.php

  • 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

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>

Le plugin peut être 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.

Sommaire