Passer au contenu principal




Avez-vous déjà entendu parler de WordPress? Fonctions connectables? Sinon, ce message devrait attirer votre attention. En un mot, les fonctions enfichables sont WordPress principales fonctions que vous pouvez remplacer. Toutes ces fonctions sont dans un seul fichier: «wp-includes / pluggable.php". Les fonctions enfichables ont été introduites dans WordPress 1.5.1, mais dans les versions plus récentes de WordPress, cette méthode n'est plus utilisée. Les fonctions récentes utilisent désormais des filtres dans leur sortie. Mais vous pouvez toujours remplacer les fonctions enfichables, et c'est ce que j'aimerais aborder dans cet article.

Quelles fonctions?

Les fonctions connectables sont:

Vous pouvez cliquer sur le nom de chaque fonction pour accéder à sa page de codex.

Comment remplacer les fonctionnalités enfichables

Eh bien, c'est assez simple, il vous suffit de créer un fichier à l'intérieur de vos plugins contenant une instruction "if (! Function_exists ()) ...", puis de redéfinir la fonction. Je vous recommande vivement de copier et coller la fonctionnalité d'origine lorsque vous démarrez. De cette façon, vous êtes sûr que la fonction fonctionnera. Voici un exemple vide:

if (! function_exists ('wp_notify_postauthor')): / ** * Avertir un auteur d'un commentaire / trackback / pingback sur l'un de ses articles. * * @since 1.0.0 * * @param int $comment_id ID de commentaire * @param string $comment_type Facultatif. Le type de commentaire est «comment» (par défaut), «trackback» ou «pingback» * @return bool False si l'adresse e-mail de l'utilisateur n'existe pas. Vrai à la fin. * / function wp_notify_postauthor ($comment_id, $comment_type = '') {/ * C'est ici que vous redéfinissez la fonction * /} endif;

J'aimerais parler de la fonction "wp_notify_postauthor ()". Celui-ci se charge d'envoyer un e-mail aux auteurs de la publication lorsqu'un nouveau commentaire est ajouté. Dans l'un de mes plugins, le gestionnaire de problèmes WordPress, je devais désactiver cette notification, mais uniquement un type de publication personnalisé spécifique. Donc, j'ai copié toute la fonction et j'ai essentiellement ajouté ceci:

if (! function_exists ('wp_notify_postauthor')): / ** * Avertir un auteur d'un commentaire / trackback / pingback sur l'un de ses articles. * * @since 1.0.0 * * @param int $comment_id ID de commentaire * @param string $comment_type Facultatif. Le type de commentaire est «comment» (par défaut), «trackback» ou «pingback» * @return bool False si l'adresse e-mail de l'utilisateur n'existe pas. Vrai à la fin. * / function wp_notify_postauthor ($comment_id, $comment_type = '') {if ($post-> post_type! = 'issue'): / * contenu de la fonction d'origine * / endif; } fin si;

C'est simple, mais cela fonctionne très bien sans avoir à faire de gros changements ou à créer une fonction personnalisée complète liée à une action personnalisée.

wp_mail ()

Comme vous l'avez vu dans la liste des fonctions enfichables, wp_mail () est une fonction enfichable. Cette fonction est celle utilisée pour envoyer des e-mails. N'importe où dans WordPress, lorsqu'un e-mail est envoyé, cette fonction est utilisée. C'est pourquoi le personnaliser peut être très intéressant. Par exemple, vous pouvez utiliser un modèle html par défaut pour tous les e-mails envoyés depuis votre installation WordPress.

Vous pouvez également copier en aveugle chaque message dans un e-mail spécifique pour avoir une sorte de sauvegarde (croyez-moi, cela peut être utile lorsque quelqu'un vous dit qu'il n'a pas reçu le message).

wp_authenticate ()

Vous pouvez également modifier wp_authenticate () et ajouter quelques paramètres supplémentaires pour renforcer la sécurité de votre site (attaques par force brute par exemple).

auth_redirect ()

Cette fonction est celle qui vérifie si un utilisateur est connecté et le redirige autrement vers la page de connexion. Il serait assez simple de remplacer la fonction et de rediriger l'utilisateur vers une page personnalisée, au lieu de la page de connexion par défaut (par exemple, si vous souhaitez masquer le dossier wp-admin).

wp_generate_password ()

Cette fonction est celle qui génère automatiquement les mots de passe. Honnêtement, cela ne nécessite aucune modification, mais maintenant que vous savez ce que sont les attaques par force brute, vous pourriez être intéressé par la création de mots de passe plus sécurisés. Eh bien, c'est la fonction à améliorer.

conclusion

Pour conclure ce court article sur les fonctionnalités enfichables de WordPress, j'aimerais souligner le fait que les nouvelles fonctionnalités ne fonctionnent plus comme ça. Comme je l'ai écrit ci-dessus, ils utilisent maintenant des filtres. Mais les fonctionnalités enfichables sont des fonctionnalités particulièrement importantes lors de la création de plugins vraiment spécifiques. Mais soyez prudent lorsque vous utilisez des fonctions enfichables. Si la fonction nouvellement créée ne fonctionne pas très bien, elle peut casser une partie de votre portail Web (en termes de fonctionnalités), donc testez-les dans toutes les conditions.