Ajouter un menu d'administration à un plugin WordPress

1 - Introduction

Généralement, les auteurs de plug-ins et de thèmes doivent fournir un accès à un écran de paramètres (options) pour que les utilisateurs puissent personnaliser l'utilisation du plug-in ou du thème. Le meilleur moyen de présenter à l'utilisateur un tel écran consiste à créer un élément de menu d'administration permettant à l'utilisateur d'accéder à cet écran de paramètres à partir de tous les écrans d'administration. Cet article explique comment les auteurs de plug-ins peuvent ajouter des menus et des écrans d'administration. Remarque: les informations suivantes supposent une connaissance des bases de l'écriture d'un plug-in et de l'utilisation de l'API Plugin des actions et des filtres.

General Functions
Menu Pages

Sous Menu Pages

Menus d'dministration WordPress 

2 - Les crochets (hooks) nécessaires

Pour ajouter un menu d'administration, vous devez faire trois choses:

  1. Créer une fonction contenant le code de construction de menu
  2. Enregistrez la fonction ci-dessus en utilisant le crochet d'action admin_menu. (Si vous ajoutez un menu administrateur pour le réseau, utilisez plutôt network_admin_menu ).
  3. Créez la sortie HTML de la page (écran) affichée lorsque l'utilisateur clique sur l'élément de menu.

C'est la deuxième étape qui est souvent négligée par les nouveaux développeurs. Vous ne pouvez pas simplement appeler le code de menu décrit; vous devez le mettre dans une fonction, puis enregistrer la fonction.

Voici un exemple très simple des trois étapes que nous venons de décrire. Ce plug-in ajoutera un élément de menu de sous-niveau dans le menu principal Paramètres dans les écrans d'administration et, une fois sélectionné, cet élément de menu affichera un écran très simple. Note: ce code doit être ajouté à un fichier PHP principal ou à un fichier PHP séparé.

<?php
/** Step 2 (from text above). */
add_action( 'admin_menu', 'my_plugin_menu' );

/** Step 1. */
function my_plugin_menu() {
add_options_page( 'My Plugin Options', 'My Plugin', 'manage_options', 'my-unique-identifier', 'my_plugin_options' );
}

/** Step 3. */
function my_plugin_options() {
if ( !current_user_can( 'manage_options' ) ) {
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
}
echo '<div class="wrap">';
echo '<p>Here is where the form would go if I actually had options.</p>';
echo '</div>';
}
?>

Dans cet exemple, la fonction my_plugin_menu () ajoute un nouvel élément au menu d'administration des paramètres via la fonction add_options_page (). Remarque: plusieurs éléments de menu plus compliqués peuvent être ajoutés, mais cela sera décrit plus tard. Notez l'appel add_action () à l'étape 2 qui enregistre la fonction my_plugin_menu () sous le hook admin_menu. Sans cet appel add_action (), une erreur PHP pour une fonction non définie sera émise lors de la tentative d'activation du plug-in. Enfin, l'appel add_options_page() fait référence à la fonction my_plugin_options() qui contient la page à afficher (et le code PHP à traiter) lorsque quelqu'un clique sur l'élément de menu.

Ces processus sont décrits plus en détail dans les sections ci-dessous. N'oubliez pas d'inclure la création du menu et de la page dans les fonctions, et utilisez le hook admin_menu pour que tout le processus démarre au bon moment!

Pour plus de détails consultez la documentation officielles 

 

Younes Derfoufi
CRMEF OUJDA

Leave a Reply

Your email address will not be published. Required fields are marked *