Comment créer un plugin wordpress ? webotheque > glossaire web > Créer un plugin wordpress

Créer un plugin wordpress

Les plugins Wordpress sont des scripts développés à l'aide du langage PHP et qui permettent d'ajouter des modules et autres fonctionnalités à votre site développé sous Wordpress.

Avant toute chose, créer un plugin wordpress nécessite quelques éléments fondamentaux:
  • Connaître les bases des langages PHP et SQL
  • Avoir une idée ou un besoin pour votre site
  • Établir un cahier des charges (ou roadmap) de votre application
  • Développer votre application tout en respectant les standards WORDPRESS
  • Créer votre fichier README.TXT (mode d'emploi) du plugin
  • Créer un compte sur WORDPRESS et publier votre plugin

Vous pouvez également consulter l'étude de cas du plugin Wordpress Save Search on Wordpress développé dernièrement suite à une demande spécifique.

- Comment créer un plugin Wordpress

La liste et les explications ci-dessous vous permetttont de créer un plugin Wordpress fonctionnel.
  • 1 - La structure du plugin
  • 2 - Création des scripts
  • 3 - Utilisation des variables globales
  • 4 - Les fonctions prédéfinies de wordpress
  • 5 - Installation et activation du plugin

- Explications

  • 1 La structure du plugin    

    La structure d'un plugin wordpress pourrait être représentée comme les différents éléments listés ci-dessous. Pour ces explications, le plugin wordpress Save Search on wordpress servira de base:

    Créer la classe du plugin
     class wp_save_search{
    	déclaration des variables ...
    	déclaration des méthodes ...
      }
    
    Dans cette classe, nous retrouverons notamment le constructeur ainsi que les différentes méthodes.
     function __construct($mode = 'install'){
     global $wpdb;
     ## $wpdb permet d'accéder aux fonctions qui
     ## opéreront sur la bdd
     $wpdb -> tbl_SSW = $wpdb -> prefix.'save_search';
     $wpdb -> tbl_SSW_CONF = $wpdb -> prefix.'save_search_conf';
     ##Récupère le prefixe des tables et créé le nom
     ## des futures tables
     if($mode == "install")
       add_action('admin_menu',array(&$this,'my_admin_menu'));
     else
       $this -> nb_caract = get_option('nb_caract');
      }
     function my_admin_menu() {
     ## Ajoute un lien vers le plugin dans le menu 
     ## "extension" de l'administration
      add_submenu_page('plugins.php',"wp_save_search","Search 
      on Wordpress"  ,8, __FILE__,array(&$this,'homepage'));		
     }  ...
    
      function homepage(){ // Mise à jour des paramètres
      $this->install();
      global $wpdb;
    
      if(isset($_POST['choice_nbcaract']) && ...){
        ## mise à jour des paramètres
      }
    	
     ...
     echo  __('Save Search on Worpdress');   ## titre du plugin
    
      $this -> main_form();
        ## formulaire pour mise à jour des paramètres
      ...
     }
    
     function main_form(){## Affiche le formulaire de paramètres
      global $wpdb; 
      $nbcaract = 
      $wpdb -> get_results("SELECT * FROM $wpdb->tbl_SSW_CONF");
      $last_view = $nbcaract[0] -> last_view;
      ...
     }
    
     function install(){## Initialisation du plugin
      global $wpdb; 
      // Create table required for plugin
      $result = $wpdb -> query("
        CREATE TABLE `$wpdb -> tbl_SSW` (
       ## Création des tables
       ...
       $this -> mem_option('wp_save_search_init',true);
     }
    
    Afin de mieux appréhender la logique et la structure d'un plugin wordpress, n'hésitez pas à télécharger le plugin Save Search on wordpress et à en étudier son fonctionnement. Vous retrouverez aisément les exemples de codes cités ci-dessus (et ci-dessous ...) et serez alors plus à même d'en comprendre les principes, et ainsi de créer vos propres plugin en fonction de vos besoins.
  • 2 Création des scripts    

    Une fois la structure de votre plugin wordpress mise en place, vous pourrez alors développer l'ensemble des scripts nécessaires à son fonctionnement (Fonctions et programmation en PHP).
  • 3 Utilisation des variables globales    

    La variable globale la plus utile est sans doute $wpdb. Elle permet de créer toutes les requêtes SQL nécessaires au fonctionnement et à l'installation de votre application.

    Assignation des noms des tables
     $wpdb -> tbl_SSW = $wpdb -> prefix.'save_search';
     ## Assignation du nom de la table à créer pour le plugin
     ## en récupérant le préfixe utilisé 
     ##(à déclarer dans le constructeur)
     
    Création de tables
     $result = $wpdb -> query("
     CREATE TABLE `$wpdb -> tbl_SSW` ( ...
     ## Création de la table
     ## Code à insérer dans la fonction install() par exemple
     
    Mise à jour de tables
     $update_nb = $wpdb -> query("
     UPDATE $wpdb -> tbl_SSW SET ...
     ## Mise à jour d'une table
    
    Insérer dans les tables
     $insert = $wpdb -> query("
     INSERT INTO `$wpdb -> tbl_SSW ...
     ## Insert des nouveaux éléments dans une table
    
    Rechercher dans les tables
     $select = $wpdb -> get_results("
     SELECT * FROM $wpdb -> tbl_SSW  WHERE ...
     ## Retourne un tableau d'objets ou NULL
    
  • 4 Les fonctions prédéfinies de wordpress    

    Quelques fonctions Wordpress
     add_action('plugins_loaded','wp_save_search_init');
     ## Déclenche une fonction suite à une action
     ## Ici, au chargement des plugins, on appelle
     ## la fonction 'wp_save_search_init' qui va
     ## quant à elle instancier la classe et installer le plugin
     
     add_action('publish_post', 'email_friends');
     ## Ici, lorsqu'un post est publié
     ## on appelle la fonction 'email_friends'
    
     add_submenu_page('plugins.php',"wp_save_search",
     "Search on Wordpress",8, __FILE__,array(&$this,'homepage'));	
     ## Ajoute un lien dans le menu Plugins 
     ## de l'administration vers votre plugin
    
     ...
    
    Pour consulter la liste détaillée des actions et autres fonctions wordpress, visitiez la page http://codex.wordpress.org/Plugin_API (Wordpress Codex).
  • 5 Installation et activation du plugin    

    Pour rendre public votre plugin wordpress, rendez-vous sur cette page http://wordpress.org/extend/plugins/about/ et suivez les instructions.
Demande de devis express

Pour une demande plus détaillée rendez-vous sur la page :
devis site internet
Statut
Civilité
Nom
Email
Projet
devis site internet
tous les champs sont requis, merci.

Sondage webotheque

Quel moteur de recherche utilisez-vous ?





envoyer
Tags prestations intégrateur html | développeur php | Api Google Map | création de blog | référenceur SEO | Api Seesmic | webmastering | flux RSS | freelance drupal | GRC PHP | api web | création site marchand

© webotheque.fr 2006 - 2024