web-dev-qa-db-fra.com

Remplacement des fonctions dans les plugins wordpress

Je remarque que dans certains plugins, vous pouvez remplacer des fonctions par ...

  1. Création d'un dossier de téléchargement
  2. Créer un dossier avec le nom du plugin
  3. Utiliser le code suivant

    if (!function_exists('function_name')) {
        function function_name() {
    
        }
    }
    

Est-ce standard pour tous les plugins Wordpress ou seulement s'ils sont écrits d'une manière spécifique?

1
redconservatory

Si le plugin affiche du contenu via une fonction, le code:

if(!function_exists('function_name')) function_name();

... est utilisé pour la sécurité.

Si votre plugin est désactivé et que la fonction if (!function_exists('function_name')) est manquante, votre thème générera une erreur fatale.

1
Ciprian

Celles-ci sont appelées fonctions enfichables et doivent pouvoir être écrasées, que ce soit par des plug-ins, des thèmes ou des thèmes enfants.

Il n’est standard que pour les fonctions destinées à être écrasées - et, en général, la meilleure pratique consiste à ajouter des crochets de filtre aux sorties de fonction, plutôt que de rendre les fonctions enfichables.

0
Chip Bennett