Créer une page de configuration WordPress en utilisant le plugin wordpress API de repos WordPress
()
()
\
\
‘nonce’ = > WP _ create nonce (‘WP rest’)
()
));
}
\/ * *
Ajouter CSS et JS à la page
* \/
Fonction publique enqueue _ Assets () {
Si (! WP _ script is ($this – > Slug, “registered”) {
$this – > Register Assets ();
}
WP _ enqueue script ($this – > Slug);
WP _ enqueue style ($this – > Slug);
}
\/ * *
La page de gestion du rendu du plug – in
* \/
Fonction publique render _ admin () {
$this – > Queue _ Asset ();
Echo \
}
} dans cette classe, j’utilise add _ menu page pour créer un menu de haut niveau, mais vous voudrez peut – être remplacer le menu add Sub au besoin. Il y a deux autres choses importantes à noter.
Le premier est comment utiliser WP _ localize script (). Cette fonctionnalité fournit un moyen de créer des variables JavaScript globales en utilisant PHP chaque fois que le script spécifié dans le premier argument est chargé. À l’origine, il s’agissait de fournir au navigateur une chaîne localisée traduite. C’est une partie de la façon dont nous l’utilisons: fournir des messages d’erreur et de succès traduisibles. Mais il peut également être utilisé pour passer des valeurs dynamiques, comme l’URL du site actuel, dans ce cas le paramètre API rest et nonce. Nous aurons besoin de tout cela en javascript, mais la situation est différente pour chaque site, donc nous devons le construire dynamiquement en utilisant PHP.
De plus, gardez à l’esprit que l’URL racine du script est passée à la classe en tant que dépendance. J’aime le faire parce que cette URL peut être utilisée ailleurs dans le plug – in ou le sujet, et j’espère qu’il y a un endroit où vous pouvez la changer ou filtrer le plug – in entier. Nous devons spécifier l’URL au démarrage de la classe. Un bon endroit pour le faire est dans le fichier root plug – in, donc plugin _ Dir URL () va générer l’URL correcte. Regardons le fichier plug – in principal qui le configure: Enqueue _ Assets ()
$this, \
\
()
\
()
);
}
\/ * *
Vérifier les permissions demandées
* *
Renvoie booléen
* \/
Permissions pour les fonctions publiques ()
Renvoie le courant _ user can (‘Manage options’);
}
\/ * *
Mise à jour des paramètres
* *
@ Param WP _ rest request $request
* \/
Paramètres de mise à jour de la fonction publique (wp \ u rest \ u request $Request) {
$set = array
« secteur» = > $request – > get Parameters (« secteur»),
« amt» = > $request – > get Parameters (‘Amt’)
);
Apex _ Settings:: Save Settings ($Settings);
Renvoie la réponse rest _ sure Response (APEX Settings:: get Settings () – > SET Status (201);
}
\/ * *
Obtenir les paramètres via l’API
* *
@ Param WP _ rest request $request
* \/
Fonction publique get _ Settings (WP rest request $Request) {
Renvoie la réponse rest _ sure Response (APEX Settings:: get Settings ();
}
Regardez, les fonctions de rappel sont très simples parce qu’elles ne contiennent que les classes de configuration que j’ai créées dans la section précédente. Il est important de comprendre que, selon la conception, ces paramètres n’ont pas la permission de contrôler ou de nettoyer. Mais les contrôles d’autorisation et l’hygiène sont très importants.
Ces paramètres de l’API rest le fournissent. La méthode POST spécifie le paramètre ‘sanitize _ Callback’ pour chaque champ. De cette façon, je peux croire que les données sont sécurisées jusqu’à ce qu’elles soient transmises. De plus, les deux chemins utilisent des permissions _ Callback, ce qui les rend accessibles uniquement par des chemins avec la fonctionnalité Manage options. Sauter une de ces étapes peut être dangereux. Maintenant, il suffit d’instancier cette classe dans l’Opération \
‘ + Top. String. Sauvegardé ‘ );
}). Erreur (fonction)
Var message = Vertex. String. Erreur
Si (R. hasownpr)
Propriétés (‘message’) {
Message = R. message;
}
$(\
})
})
}); Le deuxième appel est très similaire, sauf qu’il utilise Post et est inclus dans une fermeture liée à l’événement d’envoi du formulaire. De cette façon, il s’exécute lorsque le formulaire est soumis et nous pouvons empêcher l’action par défaut pour cet événement de se produire. Vous devriez voir les succès et les erreurs ici. Ils sont utilisés pour ajouter des messages situés dans l’objet APEX comme texte. Chaîne dans l’élément # feedback. Les messages d’erreur dans cet objet sont très courants. Mais la plupart des demandes infructueuses génèrent des réponses avec des messages. Si c’est réglé, on l’utilisera. Une fois que vous avez un bon point de départ, vous pouvez mettre à jour les champs du formulaire pour répondre à vos besoins. De plus, vous devriez peut – être simplifier cela en utilisant le cadre Javascript, car à mesure que la complexité des modules augmente, vous utiliserez de plus en plus jquery, un problème qui doit être géré, et si vous utilisez vuejs ou React, ce sera plus simple et offrira une meilleure expérience utilisateur. Cet article vous montre toutes les parties de la page ajouter une installation WordPress en utilisant l’api WordPress rest. Nous avons ajouté une page de menu, ajouté JavaScript et CSS, ajouté une classe de paramètres de lecture et d’écriture, ajouté deux paramètres d’API de repos comme interfaces reposantes et sécurisées pour ces paramètres, et mis à jour les paramètres en utilisant jquery ajax selon notre module de configuration. C’est beaucoup, mais j’espère que vous avez vu comment utiliser ces bases pour améliorer les pages de configuration, ou créer de nouvelles pages à partir de zéro et grandir à partir de là.