Introduction aux plugins : Différence entre versions

De TheliaDoc
Aller à : navigation, rechercher
Ligne 79 : Ligne 79 :
 
?>
 
?>
 
</pre>
 
</pre>
 +
 +
Détaillons les méthodes :
 +
 +
Plugins : constructeurs
 +
 +
init : méthode appelée à l'activation du plugin. Elle peut permettre de créer des tables par exemple.
 +
 +
destroy : méthode appelée à la désactivation d'un plugin. Utile pour vider le cache, supprimer des tables ...
 +
 +
getTitre : renvoie le titre du plugin
 +
 +
getChapo : renvoie le chapo du plugin
 +
 +
getDescription : renvoie la description du plugin
 +
 +
ajout_desc : permet de définir titre, chapo, description du plugin
 +
 +
  
 
[[Sommaire]]
 
[[Sommaire]]

Version du 11 juillet 2007 à 09:11

Thelia est une application modulaire pouvant être enrichie à l'aide de plugins.

Il existe 3 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.


Tous ces plugins peuvent être enrichis d'une interface administrateur.

Un plugin est au moins constitué :

- d'un répertoire étant le nom du plugin
- une classe se nommant Nom.class.php


Pour ajouter une gestion du plugin au niveau de l'interface d'administration, le code nécessaire se trouvera dans le fichier test_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

Voici la structure de base d'une classe Plugin.

?php
	include_once(realpath(dirname(__FILE__)) . "/Baseobj.class.php");
	include_once(realpath(dirname(__FILE__)) . "/Cache.class.php");
	include_once(realpath(dirname(__FILE__)) . "/Modulesdesc.class.php");
	
	class Plugins extends Baseobj{
		
		var $nom_plugin;

		function Plugins($nom=""){
			$this->Baseobj();	
			$this->nom_plugin = $nom;			
		}
		
		function init(){
			
		}

		function destroy(){
			
		}		
		
		function getTitre(){
			

			
		}
				
		function getChapo(){


		}
		
		function getDescription(){

	
		}

		function ajout_desc($titre, $chapo, $description, $lang, $devise=""){

			
			
		}
		
	}

?>

Détaillons les méthodes :

Plugins : constructeurs

init : méthode appelée à l'activation du plugin. Elle peut permettre de créer des tables par exemple.

destroy : méthode appelée à la désactivation d'un plugin. Utile pour vider le cache, supprimer des tables ...

getTitre : renvoie le titre du plugin

getChapo : renvoie le chapo du plugin

getDescription : renvoie la description du plugin

ajout_desc : permet de définir titre, chapo, description du plugin


Sommaire