De zéro à un : Guide complet pour développer votre premier plugin WordPress pas à pas

2 minutes de lecture
2026-04-10
2026-06-03
2,952
Je reçois une commission lorsque vous achetez via les liens ci‑dessous, sans frais supplémentaires pour vous.

Préparation de l'environnement de développement pour les plugins WordPress

Avant de commencer à écrire du code, il est essentiel de mettre en place un environnement de développement stable et isolé de votre ordinateur. Cela permet non seulement de protéger votre site principal, mais aussi de vous permettre de tester et de déboguer librement.

Un environnement efficace comprend généralement trois composants essentiels. Le premier est un logiciel de serveur Web, tel que Apache ou Nginx. Le deuxième est un environnement de mise en œuvre pour PHP, dont la version doit être compatible avec la version de WordPress que vous souhaitez déployer. Enfin, il y a la base de données MySQL ou MariaDB. Bien que vous puissiez installer ces logiciels un par un manuellement, nous recommandons fortement l’utilisation d’un environnement intégré sur un serveur local.

Il existe de nombreux outils d’environnement d’intégration de haute qualité sur le marché, tels que Local by Flywheel, XAMPP, MAMP ou DevKinsta. Ces outils regroupent tous les composants nécessaires et proposent une installation et une mise en marche simplifiées en un seul clic. Ils comprennent également des fonctionnalités avantageuses pour les développeurs, comme la capture des e-mails, la clonage des sites web et la configuration SSL en un seul clic, ce qui peut considérablement améliorer votre efficacité de développement.

Lectures recommandées Guide ultime pour le développement de plugins WordPress : Créer votre premier plugin personnalisé à partir de zéro

En plus de l’environnement serveur, vous aurez également besoin d’un éditeur de code. Vous pouvez choisir un environnement de développement intégré (IDE) complet, comme PhpStorm, ou un éditeur plus léger mais extensible, comme Visual Studio Code. Pour le développement de plugins, il est conseillé que ces derniers disposent au moins de fonctionnalités telles que des suggestions de code pour PHP, de mise en évidence de la syntaxe et de gestion des fichiers. L’installation de certains plugins spécifiques dans votre éditeur de texte (comme des snippets de code liés à WordPress ou PHP Intelephense) rendra le processus de codage plus fluide.

Hébergement WordPress par UltraHost
Garantie de remboursement dans les 30 jours, bande passante illimitée et base de données, protection gratuite contre les attaques DDoS. Avantage de 501 TP4T pour les achats sur 3 ans.

Comprendre la structure des fichiers principaux des plugins

Un plugin WordPress est essentiellement un ensemble d’un ou plusieurs fichiers PHP qui respectent une structure et des conventions spécifiques, afin que le système central de WordPress puisse les reconnaître et les charger.

Chaque plugin commence par un fichier principal. Ce fichier principal est le “ point d’entrée ” du plugin et doit contenir une annotation de type en-tête de fichier (header comment). Cette annotation est un bloc de commentaires sur plusieurs lignes qui contient les métadonnées du plugin, telles que son nom, sa description, sa version, son auteur, etc. C’est en lisant ces informations que WordPress affiche votre plugin dans son interface de gestion en arrière-plan. Le nom du fichier principal peut être personnalisé, mais il est généralement… plugin-name.php Dans ce format.

Voici un exemple de contenu de tête pour le fichier principal d'un plugin :

<?php
/**
 * Plugin Name: 我的第一个自定义插件
 * Plugin URI:  https://example.com/my-first-plugin
 * Description: 这是我从零开始开发的第一个WordPress插件,用于演示和学习。
 * Version:     1.0.0
 * Author:      你的名字
 * Author URI:  https://example.com
 * License:     GPL v2 or later
 * Text Domain: my-first-plugin
 */

Une fois le fichier principal prêt, vous devez l’installer à la bonne place. Le fichier central du plugin doit se trouver à l’endroit spécifié. /wp-content/plugins/ Dans un dossier indépendant situé dans le répertoire. Le nom du dossier doit être court, unique, et composé uniquement de lettres minuscules et de points-virgules. Par exemple, notre plugin peut être placé dans le dossier « my-plugin ». /wp-content/plugins/my-first-plugin/ Dans ce chemin, le fichier principal se trouve… my-first-plugin.php Placez-le dans le répertoire racine de ce dossier.

Lectures recommandées Analyse du développement de plugins pour WordPress : Guide complet pour créer des modules de fonctionnalités personnalisées à partir de zéro

Réalisez votre première fonction.

Maintenant, ajoutons la première fonction interactive à notre plugin. WordPress permet aux plugins de modifier ou d’ajouter des fonctionnalités à des moments précis grâce à un mécanisme appelé “Hooks”. Les Hooks se divisent principalement en deux types : les Action Hooks et les Filter Hooks.

Les « action hooks » vous permettent d’exécuter votre propre code à des moments précis lors de l’exécution de WordPress (par exemple, lors de la publication d’un article ou de la chargement d’une page). Un exemple très courant est l’ajout d’informations personnalisées en bas de la page web. Nous pouvons utiliser ces fonctionnalités pour… wp_footer Cette action est réalisée grâce à un hook.

Nous devons créer une fonction personnalisée et indiquer à WordPress où l’utiliser. wp_footer L’exécution a lieu lorsqu’il est déclenché. Ce processus est appelé “ montage ” d’une fonction ou d’une méthode sur un crochet (hook). Voici un exemple de mise en œuvre :

hosting.com Hébergement partagé
Hautes performances avec les CPU AMD EPYC, stockage SSD NVMe et LiteSpeed, support interne expert 24h/24 et 7j/7, mesures de sécurité avancées, notamment SSL, protection contre la force brute, les logiciels malveillants et le DDoS, économies pouvant aller jusqu'à 73%.
// 在主文件中添加以下代码
function my_first_plugin_display_footer_text() {
    echo ‘<p style="text-align: center; color: #666;">Présenté par mon premier plugin pour vous.</p>’;
}
add_action( ‘wp_footer’, ‘my_first_plugin_display_footer_text’ );

add_action() Il s’agit de la fonction principale responsable des actions de montage. Après avoir suivi les étapes décrites ci-dessus, videz le cache de votre site et rafraîchissez la page frontale ; vous devriez alors voir le texte de pied ajouté par le plugin.

Ensuite, parlons des hooks de filtre. Les hooks de filtre vous permettent de modifier les données qui leur sont transmises. Par exemple, si nous voulons modifier le contenu du titre d’un article, nous pouvons utiliser ces hooks pour le faire. the_title Filtres. Le code suivant montre comment ajouter un préfixe avant tous les titres d’articles :

function my_first_plugin_prefix_title( $title ) {
    // 检查是否在主循环中且不是管理后台,避免影响后台标题显示
    if ( ! is_admin() && in_the_loop() ) {
        $title = ‘[插件前缀] ’ . $title;
    }
    return $title;
}
add_filter( ‘the_title’, ‘my_first_plugin_prefix_title’ );

Amélioration du plugin : Ajout d'un menu de gestion et d'une page de paramétrage.

Un plugin complet nécessite généralement une interaction avec l’administrateur, ce qui implique l’ajout de propres éléments de menu et de pages de paramétrage. Cela permet aux utilisateurs de configurer le plugin sans avoir à toucher au code.

Lectures recommandées De zéro : un guide complet et un tutoriel pratique pour le développement de plugins WordPress.

Pour ajouter un nouvel élément de menu de niveau supérieur dans le menu de gestion situé sur le côté gauche de l’interface administrative de WordPress, il faut utiliser… add_menu_page() Cette fonction nécessite plusieurs paramètres pour définir le titre du menu, les autorisations, l’identifiant unique, ainsi que la fonction de rappel (callback function), etc. Vous devez les fournir au bon moment (généralement…). admin_menu L’action hook (ou crochet d’action) l’appelle.

Voici un exemple de création d'un menu principal simple ainsi que de sa page de configuration :

Hébergement partagé InterServer
Hébergement mutualisé $2.50 USD par mois, premier mois $0.1 USD code promo tryinterserver, 461 scripts cloud apps, installation en un clic.
function my_first_plugin_add_admin_menu() {
    add_menu_page(
        ‘我的第一个插件设置’, // 页面标题
        ‘我的插件’,           // 菜单标题
        ‘manage_options’,     // 所需权限(管理员)
        ‘my-first-plugin-settings’, // 菜单slug
        ‘my_first_plugin_render_settings_page’, // 渲染页面的回调函数
        ‘dashicons-admin-plugins’, // 图标(Dashicons)
        100                     // 菜单位置
    );
}
add_action( ‘admin_menu’, ‘my_first_plugin_add_admin_menu’ );

Ensuite, vous devez définir la fonction de rappel (callback function). my_first_plugin_render_settings_page() Voici le contenu HTML pour cette page de configuration. Dans cette fonction, vous pouvez afficher un formulaire et gérer son envoi (sans utiliser la technologie Ajax).

Pour stocker et récupérer les paramètres des plugins de manière sécurisée, il est conseillé d’utiliser l’API des options de WordPress. Vous pouvez en faire usage pour… add_option()get_option()update_option() et delete_option() Utilisez des fonctions telles que… pour manipuler l’élément nommé… my_first_plugin_options Les données des options doivent être saisies dans un formulaire, en utilisant les fonctionnalités intégrées à WordPress. settings_fields() et do_settings_sections() Il existe des fonctions permettant d’afficher les champs de configuration de manière sécurisée, mais celles-ci sont généralement utilisées en conjonction avec des “API de configuration” plus formelles. Pour des pages de configuration simples, il est également courant de gérer manuellement l’envoi des formulaires, ainsi que de vérifier et de nettoyer les données reçues.

résumés

Développer votre premier plugin pour WordPress est un processus d’apprentissage systématique. Vous avez commencé par mettre en place un environnement de développement local sécurisé et avez compris la structure de base des fichiers ainsi que les normes de nommage des plugins. Par la suite, vous avez maîtrisé le mécanisme des hooks, qui est au cœur de l’extensibilité des plugins pour WordPress : vous avez réussi à afficher du contenu à l’aide des hooks d’action et à modifier des données grâce aux hooks de filtre. Enfin, afin de rendre votre plugin plus facile à gérer, vous avez appris à créer des menus d’administration et des pages de configuration, ainsi qu’à interagir avec l’API des options de WordPress pour permettre le stockage permanent des données.

En suivant ces étapes, vous n’avez pas seulement créé un plugin fonctionnel, mais ce qui est plus important, vous avez également construit une base solide et extensible. Sur cette base, vous pourrez continuer à enrichir votre plugin en explorant d’autres mécanismes (tels que les « hooks »), en approfondissant vos connaissances en JavaScript (notamment Ajax), en créant des tables de base de données personnalisées, ou en développant des codes courts. Cela vous permettra d’y ajouter des fonctionnalités de plus en plus complexes et puissantes.

FAQ Foire aux questions

Est-il possible de développer un plugin pour WordPress sans aucune expérience en programmation avec le code #### ?
Bien que disposer de connaissances de base en PHP, HTML et un peu de CSS facilite les choses, il est tout à fait possible de commencer à zéro. L’essentiel est de procéder pas à pas : commencez par modifier et imiter le code de plugins existants, afin de mieux comprendre les fonctions et les mécanismes de base offerts par WordPress. Consultez également la documentation officielle et pratiquez régulièrement.

Pourquoi mon plugin ne peut-il pas être activé en arrière-plan (en mode hors connexion) ?

L’activation d’un plugin échoue généralement pour plusieurs raisons. La plus fréquente est un format incorrect des informations de en-tête du fichier principal, ou l’absence de champs obligatoires (comme le nom du plugin). Ensuite, il peut y avoir des erreurs de syntaxe dans le code PHP, que vous pouvez localiser en consultant les journaux d’erreurs du serveur web. De plus, le nom du dossier du plugin ou du fichier principal peut entrer en conflit avec d’autres plugins déjà installés, ou la version de PHP requise par le plugin peut être supérieure à celle de votre environnement de serveur actuel.

Comment diviser les paramètres avancés d’un plugin en plusieurs onglets ?

Vous pouvez y parvenir en effectuant plusieurs appels. add_menu_page() Il est possible de créer un menu principal indépendant, mais cela pourrait rendre l’arrière-plan (le code ou l’organisation interne) plus complexe et moins lisible. Une meilleure approche consiste à utiliser… add_submenu_page() Cette fonction ajoute une page de paramètres supplémentaires en tant qu’élément de menu secondaire à votre menu principal. Lors de la création du menu secondaire, le premier paramètre (le slug du menu parent) doit être défini comme le slug de votre menu principal, tandis que les paramètres suivants servent à définir le titre et les fonctionnalités du menu secondaire.

Comment publier un plugin de manière sûre après son développement ?

Avant de publier un plugin pour le répertoire des plugins WordPress, il est essentiel de s’assurer de la sécurité du code. Vous devez effectuer une vérification et une échappement stricts de toutes les données saisies par les utilisateurs. Il est recommandé d’utiliser les fonctions fournies par WordPress pour cela. sanitize_text_field()wp_kses() et esc_html()De plus, toutes les opérations sur la base de données appelées directement doivent utiliser… $wpdb Les méthodes fournies par la classe permettent de prévenir les injections SQL. Avant la publication, il conviendra également d’internationaliser le plugin et de préparer des fichiers de traduction pour toutes les chaînes de caractères visibles par les utilisateurs.