Une fonction d’assistance pour les avis d’administration
Si vous êtes dans le domaine de la création de plugins, ou même de thèmes d’ailleurs, et que vous intégrez des pratiques orientées objet dans votre travail, vous êtes probablement confronté à une sérialisation d’un certain type. Et l’un des aspects de la sérialisation est qu’elle nécessite un certain type de retour d’information pour l’utilisateur.
Il peut s’agir d’un message de réussite, d’un message d’échec ou simplement d’un message avertissant l’utilisateur qu’une erreur s’est produite ou que quelque chose doit être mis à jour.
Quoi qu’il en soit, WordPress fournit toutes les installations dont nous avons besoin ; cependant, nous pouvons nous faciliter la tâche en écrivant une fonction d’assistance pour les avis d’administration. C’est simple aussi.
Avis d’administration : une fonction d’assistance
Lorsqu’il s’agit de rédiger des avis d’administration, il est important de se familiariser avec le crochet approprié.
À partir de là, vous devez également connaître les noms de classe suivants :
- avis-erreur
- avis-succès
- avis-avertissement
- avis-info
Avec cela, il est possible d’écrire une fonction d’assistance qui utilise le crochet ci-dessus et une fonction anonyme (ou une fermeture) pour obtenir exactement ce dont vous avez besoin. Mais notez d’abord ce qui suit :
Les fonctions anonymes, également appelées fermetures, permettent la création de fonctions qui n’ont pas de nom spécifié. Ils sont surtout utiles en tant que valeur des paramètres de rappel, mais ils ont de nombreuses autres utilisations.
Cela dit, vous devriez avoir tout ce dont vous avez besoin pour écrire votre assistant et avoir une idée du moment où le vider.
Tout d’abord, la fonction d’assistance :
<?php
/**
* Provides an easy eay to display an administration notice based on the incoming
* class and message.
*
* @param string $class the class to add to the notice (warning, error, success)
* @param string $message the message to display in the administration notice area
*/
protected function displayAdminNotice($class, $message)
{
add_action(
'admin_notices',
function() use ($class, $message) {
printf(
'<div class="%1$s"><p>%2$s</p></div>',
esc_attr($class),
esc_html($message)
);
}
);
}
Supposons ensuite que la requête en cours contient des données non valides. Pour gérer cela, vous utiliseriez l’assistant ci-dessus comme suit :
<?php
if (!$this->hasValidInput()) {
$this->displayAdminNotice(
'notice notice-error',
'You must specify a valid email address and license key.'
);
}
D’un autre côté, disons que tout fonctionne bien :
<?php
if (update_option('acme-option', $values)) {
$this->displayAdminNotice(
'notice notice-success',
'The options were updated successfully!'
);
}
Comme vous pouvez le voir, cette fonction utilise des hooks WordPress natifs, des fonctionnalités de PHP, et crée également une méthode qui peut être testée à l’unité, ce qui est important si vous souhaitez écrire des applications Web testables dans WordPress.
Et même si ce n’est pas le cas, vous avez un moyen plus simple de garder votre code un peu plus SEC qu’il ne l’était auparavant.