Préparation de l'environnement de développement pour les plugins WordPress
Avant de commencer à écrire du code, vous aurez besoin d’un environnement de développement local adapté. Il est fortement déconseillé de développer des plugins directement sur un serveur de production en ligne. Un environnement de développement typique pour WordPress comprend un logiciel de serveur local (comme XAMPP, MAMP, Local by Flywheel ou Docker), un éditeur de code (comme VS Code ou PHPStorm), ainsi qu’une installation complète de WordPress.
Vous devez vous assurer que la version PHP que vous utilisez est compatible avec la version de WordPress cible. En général, le noyau de WordPress est compatible avec plusieurs versions de PHP. Pour le développement de plugins, il est conseillé d’utiliser PHP 7.4 ou une version ultérieure afin de bénéficier de syntaxes et de fonctionnalités plus modernes. De plus, vous devez activer certaines options dans l’administration de WordPress.WP_DEBUGCe mode vous aidera à localiser rapidement les erreurs pendant le processus de développement.wp-config.phpDans le fichier, trouvez et définissez les constantes suivantes :
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false ); Avec cette configuration, les informations d'erreur seront enregistrées./wp-content/debug.logIl est de bonnes pratiques que les fichiers soient stockés dans un répertoire approprié et ne soient pas affichés directement sur la page, afin de ne pas affecter l’expérience utilisateur de l’interface utilisateur (UI).
Lectures recommandées De zéro à un : Guide officiel et tutoriel pratique pour le développement de plugins WordPress.。
Créez votre premier fichier de plugin.
Tous les plugins WordPress sont stockés dans…/wp-content/plugins/Le contenu se trouve dans le répertoire. Chaque plugin dispose généralement d’un dossier distinct, dont le nom doit être concis et refléter la fonction du plugin. Maintenant, allons créer notre premier plugin.
Rédiger le fichier principal du plugin
Dans votre dossier de plugins, vous devez créer un fichier PHP principal. Le nom de ce fichier correspond généralement au nom du dossier. Par exemple…my-first-plugin.phpCe fichier sert d’entrée pour le plugin et doit contenir une annotation spécifique indiquant le nom du plugin. WordPress utilise ces informations métatagiques pour afficher votre plugin sur la page de gestion des plugins en arrière-plan.
<?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
* Domain Path: /languages
*/ Après avoir enregistré ce fichier, vous pourrez le trouver sur la page des “ Plugins ” dans l’administration de WordPress. Vous pouvez maintenant l’activer. Bien qu’il n’ait pas encore de fonctionnalités réelles, c’est un jalon important. Dans la partie en tête du fichier du plugin…Text DomainetDomain PathConçu pour l’internationalisation et la localisation, afin de préparer la publication de futurs plugins.
Sécurité de base et structure des plugins
La sécurité est la priorité numéro un dans le développement de plugins. Une approche de base consiste à empêcher l’accès direct aux fichiers de votre plugin. Cela peut être réalisé en ajoutant une vérification contre les accès directs en haut du fichier. Modifiez votre fichier principal et insérez le code suivant après les commentaires d’en-tête du plugin :
// 防止直接文件访问
if ( ! defined( 'ABSPATH' ) ) {
exit;
} Ce code vérifie les constantes.ABSPATHIl s’agit d’une vérification pour savoir si le fichier PHP a été défini correctement. Si ce n’est pas le cas (ce qui indique qu’une personne a tenté d’accéder directement au fichier via son URL), l’exécution du script est interrompue. C’est une mesure de sécurité essentielle que tous les bons plugins WordPress devraient mettre en œuvre.
Lectures recommandées Guide complet pour le développement de plugins WordPress : Un tutoriel pratique de A à Z pour les débutants jusqu'à la publication en ligne。
Ajouter des fonctionnalités essentielles au plugin.
La fonction des plugins est d’élargir les capacités de WordPress. Examinons deux exemples simples pour apprendre comment ajouter de nouvelles fonctionnalités : créer une page de gestion et intégrer du contenu sur la page d’accueil.
Ajoutez un menu de gestion simple.
Tout d’abord, nous allons apprendre à ajouter une page de menu appartenant à notre propre plugin dans l’interface d’administration du backend. Cela nécessite l’utilisation du système de “crochets” (Hooks) de WordPress, en particulier…admin_menuDes déclencheurs d'action.
Nous ajoutons une fonction dans le fichier principal du plugin, par exemple…mfp_add_admin_menuEnsuite, utilisez…add_actionLa fonction le monte suradmin_menuSur le crochet.
function mfp_add_admin_menu() {
add_menu_page(
'我的插件设置', // 页面标题
'我的插件', // 菜单标题
'manage_options', // 权限要求
'my-first-plugin', // 菜单Slug
'mfp_admin_page_html', // 用于渲染页面内容的回调函数
'dashicons-admin-generic', // 图标(使用Dashicons)
30 // 菜单位置
);
}
add_action( 'admin_menu', 'mfp_add_admin_menu' ); Ensuite, nous devons définir les fonctions de rappel (callback functions) utilisées ci-dessus.mfp_admin_page_htmlVeuillez fournir le contenu HTML de la page. Voici un exemple très simple :
function mfp_admin_page_html() {
// 再次检查用户权限
if ( ! current_user_can( 'manage_options' ) ) {
return;
}
?>
<div class="wrap">
<h1></h1>
<p>Bonjour, monde ! C’est ma première page de gestion de plugins.</p>
</div>
<?php
} Maintenant, rafraîchissez l’interface administrative de votre WordPress, et vous devriez voir un nouvel élément de menu intitulé “ Mes plugins ” dans le barre de navigation de gauche.
Ajouter du texte en bas de la page frontale.
En plus de gérer le côté backend, nous avons souvent besoin de modifier le côté frontend. Par exemple, nous voulons ajouter une information sur les droits d’auteur en bas de tous les articles et de toutes les pages. Cette fois, nous allons utiliser…the_contentLes crochets de filtre.
Lectures recommandées Guide d’introduction au développement de plugins WordPress : créer votre première extension fonctionnelle à partir de zéro.。
Les « hooks de filtre » (Filter Hooks) vous permettent de modifier les données transmises à une fonction. Nous allons créer une fonction.mfp_add_footer_textIl reçoit le contenu de l’article en tant que paramètre et y ajoute ensuite notre propre texte.
function mfp_add_footer_text( $content ) {
// 仅对主循环中的单篇文章和页面生效
if ( is_single() && in_the_loop() && is_main_query() ) {
$footer_text = '<p><em>Cet article est soutenu par mon premier plugin.</em></p>';
$content .= $footer_text;
}
return $content;
}
add_filter( 'the_content', 'mfp_add_footer_text' ); Ce code vérifie d’abord si l’environnement actuel correspond à un seul article ou à une seule page, et si la boucle de consultation principale est en cours, afin d’éviter d’ajouter du texte de manière répétée ailleurs (par exemple, dans des gadgets ou des résumés). Ensuite, il ajoute un paragraphe HTML contenant les informations de copyright à la fin du contenu original et renvoie le résultat.
Pratiques avancées pour le développement d'extensions (plugins)
Après avoir maîtrisé les bases, connaître quelques pratiques avancées permettra de rendre votre plugin plus professionnel et plus fiable.
Implementer des options de plugins configurables.
Un plugin mature doit généralement permettre aux utilisateurs de le configurer. WordPress propose une API de paramétrage pour simplifier la création des pages d'options. Cela implique l’enregistrement des paramètres, l’ajout de champs de configuration et la définition des zones de paramétrage. Bien que ce processus soit plus complexe que l’ajout direct de pages de menu, il gère automatiquement des aspects de sécurité (tels que la vérification des données Nonce) ainsi que le stockage des données des formulaires.
Généralement, nous stockons les options des plugins sous la forme d’un tableau (d’un array) dans WordPress.wp_optionsDans le tableau. Vous pouvez l’utiliser.add_option()、get_option()etupdate_option()Des fonctions sont disponibles pour manipuler les données de votre plugin.
Utiliser des classes pour organiser le code des plugins.
Lorsque le nombre de fonctionnalités d’un plugin augmente, il est facile de rencontrer des conflits de noms de fonctions si toutes ces fonctions sont placées dans l’espace de noms global. La meilleure pratique consiste à utiliser des classes PHP pour encapsuler les fonctionnalités de votre plugin. Cela permet non seulement d’organiser le code de manière plus efficace, mais aussi de bénéficier des caractéristiques de l’approche orientée objet, telles que le chargement automatique des classes, les espaces de noms (si vous utilisez PHP 5.3 ou une version ultérieure) et une meilleure encapsulation des données.
Un fichier principal de plugin basé sur des classes pourrait ressembler à ceci :
if ( ! defined( 'ABSPATH' ) ) exit;
class My_First_Plugin {
public function __construct() {
// 在构造函数中挂载所有钩子
add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
add_filter( 'the_content', array( $this, 'add_footer_text' ) );
}
public function add_admin_menu() { /* ... */ }
public function add_footer_text( $content ) { /* ... */ }
}
// 初始化插件
new My_First_Plugin(); Cette approche rassemble toutes les méthodes pertinentes dans une seule classe, ce qui améliore considérablement la maintenance du code.
résumés
Ce guide vous a guidé à travers le processus complet de création d’un plugin personnalisé pour WordPress, à partir de zéro. Vous avez appris à mettre en place l’environnement nécessaire, à créer une structure de fichiers sécurisée pour votre plugin, à utiliser les hooks d’actions et les hooks de filtres pour étendre respectivement la gestion du côté serveur et l’affichage du côté client, ainsi qu’à comprendre les concepts de développement avancé tels que l’approche orientée objet et l’utilisation des API. L’essence du développement de plugins réside dans la maîtrise du système de hooks de WordPress, qui offre de nombreuses possibilités pour modifier le fonctionnement de la plateforme sans avoir à modifier le code source principal. La meilleure façon d’acquérir cette compétence est de pratiquer régulièrement, en commençant par la création de petites fonctionnalités avant de passer à des plugins plus complexes.
FAQ Foire aux questions
Quelles connaissances de PHP sont nécessaires pour développer des plugins pour ### ?
Vous devez maîtriser la syntaxe de base de PHP, y compris les variables, les arrays, les fonctions, les tests conditionnels et les boucles. Il est encore plus important de comprendre comment interagir avec l’API de WordPress, par exemple comment utiliser les hooks.add_action, add_filterLes connaissances des fonctions courantes de WordPress sont également essentielles. Les concepts de programmation orientée objet (POO) sont particulièrement utiles lors du développement de plugins complexes.
Comment déboguer un plugin que l’on a développé soi-même ?
ActiverWP_DEBUGLe choix du modèle est la étape la plus cruciale. Veuillez consulter les détails.wp-content/debug.logCes journaux d'erreurs se trouvent dans le fichier. De plus, vous pouvez les utiliser dans votre code.var_dump()Ouerror_log()La fonction affiche des informations de débogage. Par exemple,error_log( print_r( $variable, true ) );Il est possible d’enregistrer le contenu de n’importe quelle variable dans le fichier `debug.log`. L’utilisation d’outils de débogage professionnels tels que Query Monitor peut également considérablement améliorer l’efficacité des opérations de débogage.
Puis-je utiliser des bibliothèques PHP tierces dans mon plugin ?
Oui, mais il faut procéder avec prudence. Afin d’éviter des conflits de versions avec les bibliothèques utilisées par d’autres plugins ou thèmes, il est conseillé d’utiliser l’outil de gestion des dépendances PHP Composer et de profiter de sa fonction de chargement automatique. Lors de la compilation et de la publication de votre plugin, vous pouvez choisir d’inclure les fichiers de la bibliothèque dans votre propre plugin (en respectant bien la licence de celle-ci), ou de demander aux utilisateurs d’installer eux-mêmes cette dépendance sur leur serveur.
Comment publier un plugin dans le répertoire officiel de WordPress après sa mise au point ?
Vous devez vous rendre sur WordPress.org pour soumettre votre plugin à l’examen. Le code de votre plugin doit respecter les normes et les directives de codage officielles de WordPress, notamment en matière de sécurité et d’internationalisation (en utilisant les fonctionnalités appropriées).__()et_e()La fonction contient également une description détaillée…readme.txtUne fois votre fichier approuvé, votre plugin pourra être recherché et installé par des utilisateurs du monde entier.
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.
- Comment choisir et personnaliser le thème WordPress parfait pour vous ?
- Guide de développement de plugins pour WordPress : Créez votre premier plugin personnalisé de zéro à un
- Devenir développeur de plugins pour WordPress : Un guide complet de A à Z
- De zéro à un : Guide complet et astuces pratiques pour construire un site web professionnel avec WordPress
- Guide complet pour le développement de plugins WordPress : De l’initiation à la maîtrise pour créer des extensions professionnelles