WordPress est une plate-forme puissante et flexible qui permet aux utilisateurs de créer et de gérer facilement des sites Web. L’une des fonctionnalités les plus précieuses de WordPress est sa capacité à être étendue via des plugins. Les plugins sont des packages de code qui ajoutent de nouvelles fonctionnalités ou étendent celles existantes au sein d’un site Web WordPress. Dans ce chapitre, nous nous concentrerons sur la création de métabox personnalisées à partir de zéro dans le cadre du développement du plugin.

Introduction aux métaboxes

Les métabox sont des interfaces utilisateur qui apparaissent sur les pages de modification de publication, de page ou de type de publication personnalisée dans le panneau d'administration WordPress. Ils offrent aux utilisateurs un moyen de saisir et de gérer des informations supplémentaires qui ne sont pas couvertes par les champs WordPress standard tels que le titre et l'éditeur de contenu. Les métaboxes personnalisées peuvent être utilisées pour collecter et afficher tous les types de données, du simple texte aux sélections complexes de données.

Planification Metabox personnalisée

Avant de commencer à coder notre métabox personnalisée, il est important de planifier ses fonctionnalités. Demandez-vous :

  • Quel est le but de la métabox ?
  • Quel type de données doit-il collecter ou afficher ?
  • Sur quels types de publications ou de pages doit-il apparaître ?
  • Quels champs sont nécessaires pour collecter ces données ?

Une fois que nous avons un plan clair, nous pouvons commencer la mise en œuvre.

Configurer le plugin

La première étape consiste à créer un nouveau plugin. Créez un nouveau dossier dans le répertoire /wp-content/plugins/ et un fichier PHP avec le nom de votre plugin. Dans ce fichier, commencez par un en-tête de plugin WordPress standard :

Activez le plugin via le panneau d'administration WordPress.

Création de la Metabox

Une fois le plugin activé, nous pouvons commencer à écrire la fonctionnalité permettant d'ajouter une métabox personnalisée. Ajoutons une action au hook add_meta_boxes, où nous définissons et enregistrons nos métabox.

add_action('add_meta_boxes', 'sp_add_custom_metabox'); fonction sp_add_custom_metabox() { add_meta_box( 'sp_custom_metabox', // ID métabox 'Informations supplémentaires', // Titre Metabox 'sp_display_custom_metabox', // Fonction de rappel 'post', // Type de publication 'normal', // Contexte 'haute priorité ); }

La fonction sp_display_custom_metabox est l'endroit où nous définirons le HTML de notre métabox et les champs qu'elle contiendra. Créons cette fonction maintenant :

fonction sp_display_custom_metabox ($ post) { // Utiliser un nonce pour la vérification wp_nonce_field(basename(__FILE__), 'sp_custom_metabox_nonce'); // Récupère les valeurs actuelles, le cas échéant $meta_value = get_post_meta($post->ID, '_sp_meta_value', true); // Contenu de la métabox echo '<label for="sp_meta_value">Valeur supplémentaire :</label>'; echo '<input type="text" name="sp_meta_value" id="sp_meta_value" value="' . esc_attr($meta_value) . '">'; }

Enregistrement des données Metabox

Après avoir créé la métabox et affiché les champs nécessaires, nous devons nous occuper de la sauvegarde de ces données lors de la sauvegarde de la publication. Pour ce faire, connectons une fonction au hook save_post.

add_action('save_post', 'sp_save_metabox_data'); fonction sp_save_metabox_data ($ post_id) { // Vérifie le occasionnel if (!isset($_POST['sp_custom_metabox_nonce']) || !wp_verify_nonce($_POST['sp_custom_metabox_nonce'], nom de base(__FILE__))) { renvoie $post_id ; } // Vérifiez si l'utilisateur actuel a la permission de modifier la publication if (!current_user_can('edit_post', $post_id)) { renvoie $post_id ; } // Vérifiez qu'il ne s'agit pas d'une sauvegarde automatique if (défini('DOING_AUTOSAVE') && DOING_AUTOSAVE) { renvoie $post_id ; } // Désinfecte et sauvegarde les données $new_meta_value = (isset($_POST['sp_meta_value']) ? sanitize_text_field($_POST['sp_meta_value']) : ''); update_post_meta($post_id, '_sp_meta_value', $new_meta_value); }

Cette fonction vérifie la sécurité, l'autorisation de l'utilisateur et s'il ne s'agit pas d'une sauvegarde automatique avant de nettoyer et de sauvegarder les données envoyées.

Conclusion

Développer des métabox personnalisées est un moyen efficace d'ajouter des fonctionnalités spécifiques à votre site Web WordPress. En suivant les étapes décrites ci-dessus, vous pourrez créer des métabox capables de collecter et d'afficher des données en fonction des besoins de votre site Web. N'oubliez pas de toujours donner la priorité à la sécurité et à l'assainissementaction sur les données pour protéger votre site Web. Avec de la pratique et de l'expérimentation, vous pouvez développer davantage vos compétences en développement de plugins et créer des solutions encore plus robustes pour vos utilisateurs.

Nous espérons que ce guide vous a été utile dans votre parcours d’apprentissage WordPress. Continuez à explorer et à développer vos compétences pour créer des sites Web encore meilleurs et plus fonctionnels.

Répondez maintenant à l’exercice sur le contenu :

Quel est le but de la fonction `sp_save_metabox_data` dans le développement de métabox personnalisées pour WordPress ?

Tu as raison! Félicitations, passez maintenant à la page suivante

Vous avez raté! Essayer à nouveau.

Image de l'article Développement de plugins à partir de zéro : travailler avec le personnalisateur

Page suivante de lebook gratuit :

107Développement de plugins à partir de zéro : travailler avec le personnalisateur

0 minutes

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6,5 millions
d'étudiants

Certificat gratuit et
valide avec QR Code

48 mille exercices
gratuits

Note de 4,8/5 dans les
magasins d'applications

Cours gratuits en
vidéo, audio et texte