Connaissances de base pour le développement d'extensions WordPress
Avant de commencer à écrire du code, il est essentiel de comprendre les concepts de base des plugins WordPress. Un plugin WordPress est essentiellement un ensemble d’un ou plusieurs fichiers PHP qui fonctionne grâce aux divers outils et fonctionnalités mis à disposition par WordPress.APIetHookLes plugins permettent d’élargir ou de modifier les fonctionnalités de base de WordPress. Ils peuvent aller d’un simple ajout de raccourcis (codes courts) à la création d’une plateforme d’e-commerce complète. Tous les plugins sont stockés dans un répertoire spécifique de WordPress./wp-content/plugins/Dans le répertoire, chaque plugin dispose de son propre dossier indépendant.
Le cœur du développement de plugins réside dans la compréhension des principes de fonctionnement de WordPress.动作钩子et过滤器钩子。动作钩子Cela vous permet d'exécuter du code PHP personnalisé à des moments spécifiques, par exemple lors du chargement de la page ou de la publication d'un article.过滤器钩子Cela vous permet de modifier diverses données générées par WordPress pendant son exécution (comme le contenu des articles, les titres, les extraits, etc.). Maîtriser l’utilisation de ces hooks est essentiel pour le développement de plugins.
Pour que les plugins soient reconnus par WordPress, chacun d’eux doit contenir une annotation de type « header » conforme aux normes. Cette section d’annotation se trouve généralement en début du fichier PHP principal du plugin et fournit à WordPress des informations de base sur celui-ci, telles que le nom, la description, la version, l’auteur, etc. Sans cette annotation, le plugin ne sera pas affiché dans la liste des plugins disponible depuis l’administration de WordPress.
Lectures recommandées Comprendre en profondeur le développement de plugins pour WordPress : de zéro à la création d'extensions professionnelles。
Créez votre premier plugin.
Nous allons commencer par créer le plugin le plus simple possible, celui de type “Hello World”. Ce plugin affichera un message de bienvenue personnalisé en haut du panneau de contrôle de l’administration WordPress.
Initialiser le répertoire des plugins et le fichier principal.
Tout d’abord, vous devez vous assurer que tout est prêt dans votre environnement de développement local ou sur votre site de test. /wp-content/plugins/ Créez un nouveau dossier dans le répertoire. Nous allons l’appeler… my-first-pluginEnsuite, créez un fichier PHP principal dans ce dossier. Généralement, nous l’appelons d’après le nom du plugin. Ici, nous allons en créer un. my-first-plugin.php。
Dans my-first-plugin.php Au début du fichier, il faut ajouter les informations de la tête du plugin. C’est l“” identité » du plugin.
Rédiger les informations de tête du plugin et les fonctions principales
Une fois le fichier créé, ouvrez-le et saisissez le code suivant :
<?php
/**
* Plugin Name: 我的第一个插件
* Plugin URI: https://yourwebsite.com/my-first-plugin
* Description: 这是一个用于学习插件开发的入门示例,会在仪表盘显示欢迎信息。
* Version: 1.0.0
* Author: 你的名字
* Author URI: https://yourwebsite.com
* License: GPL v2 or later
* Text Domain: my-first-plugin
*/ Cette note définit les informations de base du plugin. Après avoir enregistré le fichier, connectez-vous à votre administration WordPress et accédez à la page des plugins. Vous devriez y voir un nouveau plugin intitulé “ Mon premier plugin ”. Activez-le maintenant ; il n’a pas encore de fonctionnalités.
Lectures recommandées Guichet unique pour le développement de plugins WordPress : créez votre propre plugin de A à Z.。
Ensuite, nous allons y ajouter la première fonction. Nous allons utiliser… add_action() La fonction permet d’ajouter une fonction personnalisée aux points de déclenchement (action hooks) de WordPress. Ajoutez le code suivant en dessous des commentaires d’introduction du fichier.
// 在仪表盘顶部添加欢迎信息
function my_first_plugin_admin_notice() {
echo '<div class="notice notice-success is-dismissible"><p>Bienvenue à l’utilisation de “ Mon premier plugin ” ! C’est un bon début.</p></div><?php
}
add_action( 'admin_notices', 'my_first_plugin_admin_notice' ); Ici, nous avons créé un élément appelé… my_first_plugin_admin_notice La fonction en question a pour but de générer un segment de code HTML destiné à afficher une notification dans le style de l'interface de administration de WordPress. Ensuite, nous l'utilisons… add_action( ‘admin_notices’, ‘my_first_plugin_admin_notice’ ) Mount this function onto… admin_notices Cette action est liée à un crochet (hook). Cela signifie que chaque fois que WordPress prépare l'affichage d'une notification d'administration en arrière-plan, notre fonction sera exécutée.
Après avoir enregistré le fichier, rafraîchisse n’importe quelle page de l’administration de WordPress. Vous verrez alors une boîte de message verte indiquant que l’opération a été réussie. Félicitations, votre premier plugin fonctionnel est maintenant en place et prêt à être utilisé !
Ajouter une page de configuration pour le plugin.
Un plugin complet doit généralement fournir des options de configuration à l’utilisateur. Nous allons ajouter une page de paramétrage simple pour “ Mon premier plugin ”, permettant aux utilisateurs de personnaliser le texte affiché dans le message de bienvenue.
Créer des éléments de menu de gestion
Tout d’abord, nous devons ajouter un élément de menu dans le panneau de gestion du côté droit de l’interface administrative de WordPress. Cela nécessite l’utilisation de certaines fonctionnalités spécifiques. add_action() La fonction est montée sur admin_menu Crochet. Continuez à ajouter le code suivant dans le fichier principal du plugin :
// 添加插件设置页面到后台菜单
function my_first_plugin_add_menu() {
add_menu_page(
‘我的第一个插件设置’, // 页面标题
‘第一个插件’, // 菜单标题
‘manage_options’, // 权限 (manage_options 表示管理员权限)
‘my-first-plugin-settings’, // 菜单 slug
‘my_first_plugin_settings_page’, // 用于显示页面内容的回调函数
‘dashicons-smiley’, // 菜单图标 (Dashicons)
100 // 菜单位置
);
}
add_action( ‘admin_menu’, ‘my_first_plugin_add_menu’ ); add_menu_page() Il s’agit d’une fonction native de WordPress, utilisée pour ajouter un menu principal en arrière-plan. Nous avons défini le titre de la page, le texte affiché dans le menu, ainsi que les droits d’accès (dans ce cas, seuls les administrateurs peuvent y accéder). manage_optionsuniqueslug… ainsi que les noms des fonctions de rappel utilisées pour afficher le contenu de la page. my_first_plugin_settings_page。
Lectures recommandées Guide d'introduction à l'hébergement cloud : apprenez à déployer et à gérer un serveur cloud à partir de zéro.。
Construire un formulaire pour la page de paramétrage
Ensuite, nous devons définir… my_first_plugin_settings_page Cette fonction est utilisée pour rendre le contenu HTML de la page de configuration et gérer la logique de sauvegarde des formulaires. Elle crée un formulaire simple, et les données saisies par les utilisateurs seront transmises via WordPress. options L’API est utilisée pour effectuer des opérations de sauvegarde et de lecture des données.
// 设置页面的内容
function my_first_plugin_settings_page() {
// 检查用户权限
if ( !current_user_can( ‘manage_options’ ) ) {
wp_die( __( ‘你没有权限访问此页面。’ ) );
}
// 保存表单数据
if ( isset( $_POST[‘my_first_plugin_message’] ) ) {
update_option( ‘my_first_plugin_custom_message’, sanitize_text_field( $_POST[‘my_first_plugin_message’] ) );
echo ‘<div class="“notice" notice-success is-dismissible”><p>Les paramètres ont été sauvegardés !</p></div>’;
}
// 获取已保存的消息
$saved_message = get_option( ‘my_first_plugin_custom_message’, ‘这是一个通过设置页面定制的欢迎消息!’ );
// 输出表单 HTML
?>
<div class="“wrap”">
<h1>Les premières configurations de mon plugin</h1>
<form method="“post”" action="/fr/“”/" data-trp-original-action="“”">
<table class="“form-table”">
<tr>
<th scope="“row”"><label for="“custom_message”">Message de bienvenue personnalisé</label></th>
<td>
<input type="“text”" id="“custom_message”" name="“my_first_plugin_message”" value="”NO NUMERIC NOISE KEY" 1001” class="“regular-text”" />
<p class="“description”">Entrez le texte que vous souhaitez afficher dans les notifications du tableau de bord.</p>
</td>
</tr>
</table>
<?php submit_button( ‘保存更改’ ); ?>
<input type="hidden" name="trp-form-language" value="fr"/></form>
</div>
<?php
} Dans cette fonction, nous vérifions d’abord les autorisations de l’utilisateur. Ensuite, nous vérifions s’il y a une demande POST (c’est-à-dire si l’utilisateur a cliqué sur le bouton d’enregistrement). Si c’est le cas, nous utilisons… update_option() La fonction enregistre les messages présents dans le formulaire dans WordPress. options Dans la table de la base de données, et en utilisant… sanitize_text_field() Effectuer un filtrage de sécurité. Ensuite, nous utilisons… get_option() Lire la valeur enregistrée précédemment ; si elle n’existe pas, utiliser la valeur par défaut. Enfin, nous affichons un formulaire HTML contenant une case de saisie.
Modifiez la fonction de notification pour utiliser des messages personnalisés.
Enfin, nous devons modifier ce que nous avons créé précédemment. my_first_plugin_admin_notice La fonction doit lire les messages à partir des options que nous avons enregistrées, plutôt que d'afficher un texte fixe.
// 修改后的通知函数
function my_first_plugin_admin_notice() {
// 从数据库获取自定义消息
$custom_message = get_option( ‘my_first_plugin_custom_message’, ‘欢迎使用“我的第一个插件”!这是一个成功的开始。’ );
echo ‘<div class="“notice" notice-success is-dismissible”><p>’ . esc_html( $custom_message ) . ‘</p></div>’;
} Maintenant, activez le plugin et vous verrez un menu intitulé “ Premier plugin ” dans la barre latérale du panneau de contrôle. Cliquez dessus pour modifier le message et enregistrer les changements. Rafraîchissez les autres pages du panneau de contrôle et vous constaterez que le message d’alerte en haut de l’écran a été remplacé par le contenu que vous avez personnalisé. Ainsi, vous avez créé un petit plugin doté des fonctions de base de création, de modification, de suppression et de consultation de données.
Meilleures pratiques et astuces avancées pour le développement d'extensions
Pour développer un plugin maintenable, sécurisé et compatible, il est nécessaire de suivre certaines bonnes pratiques.
Assurer la sécurité du code et la purification des données
La sécurité est la priorité numéro un dans le développement de plugins. Ne faites jamais confiance aux données saisies par les utilisateurs ou provenant de sources externes. WordPress met à votre disposition de nombreuses fonctions pour vous aider à purifier, échapper aux erreurs (« échapper » les caractères dangereux) et à valider les données.
* 净化输入:使用函数如 sanitize_text_field()、sanitize_email()、sanitize_url() Il s'agit de traiter les données soumises via le formulaire.
* 转义输出:在将任何数据输出到 HTML、JavaScript 或 URL 时,必须进行转义。使用 esc_html()、esc_attr()、esc_url() et wp_kses_post() et d'autres fonctions.
* 权限检查:在进行任何管理操作之前,务必使用 current_user_can() Vérifier si l'utilisateur actuel dispose des autorisations nécessaires, par exemple… current_user_can( ‘manage_options’ )。
* Nonce验证:对于涉及数据更改的操作(如表单提交、AJAX请求),使用 wp_nonce_field()、wp_verify_nonce() Pour empêcher les attaques de falsification de demandes跨-sites (Cross-Site Request Forgery, CSRF), nous pouvons améliorer les formulaires de la page de configuration existante en y intégrant une vérification à l’aide de valeurs aléatoires (nonce) afin d’accroître la sécurité.
Réaliser l'internationalisation des plugins.
Pour que votre plugin puisse être utilisé par des utilisateurs du monde entier, l’internationnalisation est une étape essentielle. Cela vous oblige à préparer les traductions de toutes les chaînes de texte destinées aux utilisateurs.
1. Utilisation des champs de texte : Définissez-les dans les commentaires en tête du plugin. Text DomainPar exemple… my-first-plugin), et l'utiliser dans toutes les chaînes de caractères qui doivent être traduites. __(‘文本’, ‘my-first-plugin’) Ou _e(‘文本’, ‘my-first-plugin’) Encapsulation de fonctions.
2. Generation du fichier de traduction : Utilisez un outil tel que Poedit pour analyser toutes les chaînes de caractères pouvant être traduites à l’intérieur du plugin, et générer le fichier de traduction correspondant. .pot Fichiers de modèle, puis les traduire dans différentes langues. .po et .mo Les documents.
3. Chargement du champ de texte : Lors de l’initialisation du plugin, utilisez… load_plugin_textdomain() La fonction charge votre fichier de traduction.
Gérer le cycle de vie des plugins
Un plugin professionnel doit gérer correctement les événements d’activation, de désactivation et de désinstallation. Vous pouvez y parvenir en créant des fonctions de déclencheur (hook functions) appropriées.
* 激活钩子:使用 register_activation_hook() Vous pouvez créer une fonction qui s’exécute lorsque le plugin est activé. Cela est généralement utilisé pour créer des tables dans une base de données, initialiser des options par défaut ou vérifier la compatibilité de l’environnement.
* 停用钩子:使用 register_deactivation_hook()Il est généralement utilisé pour nettoyer les données temporaires ou pour arrêter des tâches planifiées.
* 卸载钩子:使用 register_uninstall_hook()Remarque : Ce crochet est conçu pour s’exécuter lorsque l’utilisateur supprime complètement un plugin de WordPress, afin de nettoyer toutes les options de base de données, les tables personnalisées et les fichiers créés par ce plugin. L’opération doit être effectuée avec prudence et l’utilisateur doit en être clairement informé.
résumés
Cet article vous guide pas à pas pour découvrir en détail le processus de développement de plugins pour WordPress, à partir de zéro. Vous avez d’abord appris les concepts de base des plugins, en particulier le rôle essentiel des « action hooks » et des « filter hooks ». Ensuite, vous avez créé vous-même un cadre de plugin comprenant des dossiers, un fichier principal ainsi que des informations de tête standard. add_action() Fonctions et admin_notices Le « crochet » a permis de réaliser la première fonction de visualisation. Ensuite, en ajoutant une page de paramétrage au plugin, vous avez appris comment l’utiliser. add_menu_page() Créer un menu en arrière-plan, et savoir comment l'utiliser. update_option() et get_option() Nous avons effectué des opérations de création, de modification, de suppression et de consultation de données. Enfin, nous avons abordé les meilleures pratiques à suivre dans le développement professionnel, telles que le codage sécurisé, l’internationalisation et la gestion du cycle de vie des plugins. En respectant ces étapes et principes, vous aurez acquis la capacité de développer des plugins WordPress simples, pratiques et sûrs, et pourrez ensuite explorer des fonctionnalités plus complexes sur cette base.
FAQ Foire aux questions
Pour développer un plugin WordPress, quelles connaissances de base sont nécessaires ?
Vous devez maîtriser la syntaxe de base du langage PHP, car le code des plugins est principalement écrit en PHP. De plus, il est nécessaire de connaître les langages HTML, CSS et le JavaScript de base pour construire les interfaces utilisateur et les interactions. Le plus important est de bien comprendre la structure fondamentale de WordPress, en particulier ses…HookSystèmes (actions et filtres)选项API、数据库APIaussiREST APIIl est également essentiel de comprendre les normes de codage et les meilleures pratiques de sécurité de WordPress.
Comment déboguer et tester mon plugin ?
Il existe plusieurs méthodes de débogage pour le développement d’extensions WordPress. Tout d’abord, dans votre… wp-config.php Activer dans le fichier. WP_DEBUG et WP_DEBUG_LOG Constante : cela enregistre les erreurs et les avertissements PHP dans… /wp-content/debug.log Dans le fichier, cela facilite la détection des problèmes. De plus, pour le code dont la logique est complexe, il est possible d’utiliser… error_log() La fonction affiche la valeur de la variable dans le journal d’activité. Il est également conseillé de développer votre code dans un environnement local (tel que Local by Flywheel ou XAMPP) ou sur un site de test temporaire, afin de ne pas affecter le site en production. L’utilisation d’un système de contrôle de version (comme Git) est une bonne pratique pour gérer les modifications apportées au code.
Comment mon plugin peut-il être compatible avec différentes versions de WordPress ?
Afin de garantir une compatibilité étendue des plugins, il est important de suivre ces conseils pendant le développement : évitez d’utiliser des fonctions qui n’ont été introduites que dans les versions les plus récentes de WordPress. Si leur utilisation est indispensable, assurez-vous de les utiliser avec prudence et de prendre en compte les éventuelles conséquences sur la compatibilité avec les versions antérieures. function_exists() Effectuez des vérifications conditionnelles et prévoyez des plans de rechange. Cela peut être fait en ajoutant des commentaires au début du fichier du plugin. Requires at least et Tested up to Déclarez clairement la gamme de versions de WordPress que votre plugin prend en charge. Testez votre plugin régulièrement sur la dernière version de WordPress et mettez à jour vos déclarations de compatibilité en temps opportun. Respecter les normes de codage officielles de WordPress permet également de réduire au minimum les problèmes de compatibilité dus aux mises à jour du noyau.
Comment distribuer mon plugin une fois son développement terminé ?
Il existe principalement deux moyens de distribuer des plugins. Le premier consiste à les publier gratuitement dans le catalogue officiel de plugins de WordPress, ce qui permet à vos plugins d’être découverts et téléchargés par des millions d’utilisateurs à travers le monde. Vous devez vous rendre sur WordPress.org pour soumettre votre plugin et vous assurer que son code respecte les spécifications et les normes d’audit de la plateforme. Le second moyen est de le commercialiser en créant votre propre site web. Dans ce cas, vous êtes responsable des ventes, des paiements, de la vérification des licences et du soutien aux clients. Pour les plugins commerciaux, il est courant d’utiliser la programmation orientée objet (OOP) pour mieux organiser la structure du code, et il est possible d’intégrer des frameworks afin de simplifier la gestion des licences et les notifications de mises à jour. Quel que soit le choix, il est essentiel de fournir des documents clairs et un soutien rapide aux utilisateurs.
Quelle est la suite, quelle est la suite ?
Lecture approfondie et connaissances pratiques
Les articles suivants sont liés au sujet de cet article et peuvent faire l'objet d'une lecture plus approfondie. Il est souvent préférable de commencer par l'article qui se rapproche le plus de votre problème actuel, puis d'étendre progressivement la lecture aux sujets environnants.
- Guide de début pour les hôtes partagés : Comment choisir le bon hébergement de site web, même sans aucune expérience
- 10 plugins WordPress les plus recommandés pour 2026 pour améliorer la performance et la sécurité de votre site web
- Analyse approfondie de WooCommerce : Construire un site e-commerce WordPress puissant à partir de zéro
- Les 10 plugins WordPress les plus recommandés pour 2026 pour améliorer la performance et la sécurité de votre site web
- 10 recommandations de plugins WordPress pratiques pour améliorer considérablement la performance et la sécurité du site web.