Introduction a la fonction add_filter de WordPress

Comment fonctionne les filtres WordPress ?

Les filtres aussi appelé hooks permettent de modifier le comportement d’une fonction, que se soit pour le thème ou l’administration de WordPress. Le filtre sera appliqué à un certain moment de l’exécution de la fonction.

 

Création d’un filtre WordPress

<?php add_filter( $tag, $function_to_add, $priority, $accepted_args ); ?>

 

$tag  (obligatoire) nom du filtre.

$function_to_add  (obligatoire)– non de la fonction a supprimer.

$priority  (facultatif) – Un nombre entier pour spécifier quand notre fonction sera exécutée. La valeur par défaut est 10.

$accepted_args  (facultatif) – Un nombre entier pour définir le nombre d’arguments que le filtre accepte. La valeur par défaut est 1.

 

Prenons un exemple : Imaginiez que vous créez une fonction qui retourne une phrase:

function fred_quote() {
    $quote = "Une voiture rouge.";
     return $quote;
}

Si vous voulez laisser des personnes filtrer cette citation, vous devez utiliser apply_filter() comme ceci :

function fred_quote() {
    $quote = "Une voiture rouge.";
     return apply_filters( 'fred_quote', $quote );
}

La fonction apply_filter va autoriser la modification de la fonction et la variable ($quote) qui contient les données.

<?php apply_filters( $tag, $value, $var ... ); ?>

$tag (obligatoire)– nom de la fonction

$value (obligatoire) -La valeur qui peut être modifiée par des filtres

$var () (facultatif) -variable supplémentaire.

apply_filter peut être utilisé en dehors d’une fonction.

 

De cette façon, un autre développeur pourra changer les données de votre fonction comme ceci :

function change_fred_quote( $quote ) {
    $quote = str_replace( 'rouge', 'verte', $quote );
    return $quote;
}
 
add_filter( 'fred_quote', 'change_fred_quote' );

WordPress contient plusieurs centaines de fonctions qui peuvent être modifiées ou améliorées, c’est pourquoi je vais faire une liste de filtres que vous pourrez appliquer à votre blog WordPress :

[list-posts]

0 0 votes
Évaluation de l'article
S’abonner
Notification pour
guest

1 Commentaire
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
luciole135
8 années il y a

Magnifique !
Depuis le temps que je cherche à comprendre les add_filter() en vain, grâce à vous, tout est devenu lumineux !

Merci encore.

p.s : Vous ne pourriez pas faire un article sur le add_action() ?