Dans le tutoriel précédent de cette série, nous avons commencé à travailler sur notre page d’administration personnalisée..
En fin de compte, les objectifs sur lesquels nous travaillons montreront comment nous pouvons utiliser notre propre code personnalisé ainsi que l'API WordPress pour créer des pages un peu plus flexibles que ce qui peut naturellement être disponible via l'une des API standard..
Cela ne veut pas dire que nous devrions éviter ou éviter les API fournies par WordPress. En fait, je suis fan de les utiliser le plus possible. Cependant, lorsqu'un projet nécessite l'introduction de fonctionnalités supplémentaires ou la personnalisation des performances, le développement de ces fonctionnalités vous revient..
Deuxièmement, nous utilisons également des principes tels que le principe de responsabilité unique pour démontrer comment nous pouvons définir une approche bien organisée et orientée objet du code que nous écrivons..
Avant d'aller plus loin, passons en revue ce que nous avons couvert jusqu'à présent..
Rappelons que nous avons fourni une définition de travail du principe de responsabilité unique:
Rassemblez les choses qui changent pour les mêmes raisons. Séparez les choses qui changent pour différentes raisons.
Et nous avons utilisé cela pour guider l'organisation de la création de nos sous-menus et pages de sous-menus actuels.
Nous avons également examiné le code de la première version du plugin, l'avons mis à disposition pour le téléchargement et jeté les bases du travail que nous allons effectuer dans ce tutoriel..
Si vous n'avez pas lu le didacticiel précédent ou au moins révisé le code, je vous le recommande vivement. sinon, vous vous demandez peut-être pourquoi nous prenons certaines de nos décisions ou pourquoi une partie du code est organisée de la manière dont il est.
Cela dit, continuons.
Comme avec beaucoup de mes tutoriels, j'aime m'assurer que tout est opérationnel avant de continuer. Pour ce tutoriel, vous aurez besoin des éléments suivants:
Si l’une des solutions ci-dessus n’a aucun sens, veuillez consulter le didacticiel précédent ou cette série pour savoir comment configurer un environnement de développement local..
Pour ce qui est du code à venir, nous allons le parcourir pas à pas. J'expliquerai exactement ce que nous faisons et vous fournirons les commentaires de code et les commentaires dans le didacticiel pour vous assurer de bien comprendre tout ce qui se passe tout au long du processus..
Alors que nous continuons avec le plugin dans cet article, voici ce que nous allons faire:
Dans ce tutoriel, nous allons nous concentrer sur les deux points suivants. Dans le prochain article, nous allons nous concentrer sur les points trois et quatre..
Pour ceux qui sont familiers avec les paramètres de l'API, cela semble excessif. Mais comme vous le verrez dans le reste de ce tutoriel et de cette série, il y a une raison pour laquelle nous allons le décomposer en morceaux plus petits comme celui-ci.
Avec cela présenté comme notre plan d'action, commençons.
Lorsque nous avons quitté cette fonction pour la dernière fois, le code ressemblait à ceci:
Nous sommes maintenant prêts à commencer à créer la mise en page de la page. Chaque fois que je travaille sur des plugins pour des clients, j'appelle ces "vues".
Cela ne doit pas être confondu avec le paradigme modèle-vue-contrôleur. Mais je ne les appelle pas non plus de modèles, car dans WordPress, ce sont les modèles qui permettent d'afficher le contenu d'une page sur le front-end.
Donc, il est vues.
La première chose à faire est de créer un répertoire views dans le répertoire admin de notre plugin..
Une fois que cela est fait, nous pouvons nommer ceci quelque chose d'aussi simple que
settings.php
ou quelque chose de plus descriptif. C'est vraiment à vous et à la complexité de ce que vous construisez. Puisqu'il s'agit d'un simple plugin, je m'en tiens à un nom simple.Ensuite, commençons par créer le balisage de base qui fournira l’élément wrapper WordPress standard avec le titre de la page:
Notez ici que le titre est dérivé d’une fonction qui utilise les valeurs passées dans le
add_options_page
fonctionner à partir du moment où nous avons commencé à travailler sur le plugin. Ensuite, nous utilisons également leadmin_url
fonction pour indiquer où nous allons poster les options (dont nous parlerons un peu plus tard).Et dans les deux cas, nous utilisons le
esc_html
fonction de désinfection pour vous assurer qu'aucune chaîne malveillante ne peut être rendue sur la page.Voici deux exemples d'utilisation, dans la mesure du possible, des fonctions d'API disponibles aux fins pour lesquelles elles ont été conçues. En supposant que tout se soit bien passé, votre page devrait ressembler à ceci:
Maintenant, pour connecter cela à votre plugin, nous devons revisiter la fonction d’en haut. Cela signifie que la fonction devrait maintenant ressembler à ceci:
Assez facile, non? En supposant que tout est configuré correctement, voici ce que vous devriez voir:
Non, ce n'est pas grand chose à regarder, mais nous allons changer cela.
Ajouter une option
À ce stade, nous sommes prêts à ajouter une option. Pour les besoins de cet article, nous allons permettre à l'utilisateur de saisir quelque chose dans un élément de texte saisi. Cela nous permettra d’examiner comment désinfecter l’information et éventuellement la montrer au début du processus..
Pour ce faire, nous avons besoin d’un élément d’information clé. Nous avons besoin de connaître l'attribut de nom que nous allons appeler le
contribution
élément. C’est pour que nous puissions l’enregistrer correctement dans la base de données..Ainsi, pour les besoins de cet exemple, supposons que ce message soit utilisé pour s'afficher sans condition en haut de chaque message. Nous n'allons pas aller droit au but dans cet article, mais nous y reviendrons dans le prochain article..
Dans ton
settings.php
voir, ajouter le code suivant.