Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Coupe WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Qu'est-ce que c'est : Le filtre

Dans le développement de WordPress, un filtre peut être utilisé pour modifier ou étendre les fonctionnalités de WordPress. Pour ce faire, il prend des données fournies par WordPress, les modifie en quelque chose d’autre, puis les renvoie.

Les filtres sont l’une des grandes fonctionnalités qui rendent WordPress si personnalisable. Ce sont des morceaux de code PHP qui sont « crochetés » à un évènement WordPress. Lorsque l’évènement est déclenché, le filtre sera appliqué aux données générées par le crochet de l’évènement.

Ils sont très utilisés par les développeurs/développeuses de thèmes et d’extensions. Toutefois, si vous n’êtes pas développeur/développeuse, vous pouvez coller des extraits de code provenant du web pour ajouter de nouvelles fonctionnalités à votre site. Nombre d’entre elles comprennent des filtres.

What Is Filter in WordPress?

Qu’est-ce qu’un filtre dans WordPress ?

Un filtre modifie le comportement par défaut d’une fonction spécifique sur votre site WordPress. Il le fait en manipulant les données qu’il reçoit, puis en renvoyant ces données à WordPress avant qu’elles ne soient affichées dans le navigateur.

Par exemple, les filtres peuvent être utilisés pour tronquer le texte, modifier le formatage du contenu, attacher des liens aux publications, modifier les blocs d’une page et modifier les options récupérées dans la base de données. Ils pourraient également modifier la longueur d’un extrait, placer des publications similaires sous votre contenu principal ou modifier un prix dans WooCommerce.

Les filtres sont ajoutés à l’aide de la fonction add_filter(). WordPress dispose de plusieurs fonctions qui vous permettent d’utiliser des actions, mais ce sont celles qui sont le plus couramment utilisées :

  • add_filter() : cette fonction joint une fonction à un crochet
  • remove_filter() : Retire une fonction attachée à un crochet de filtre spécifié.
  • doing_filter(): détecte tout filtre en cours d’exécution
  • has_filter(): vérifie si un filtre a été inscrit

Les filtres sont utilisés par les développeurs d’extensions/développeurs de thèmes pour ajouter des fonctionnalités supplémentaires à WordPress. Vous pouvez également utiliser des filtres pour personnaliser votre thème en ajoutant des extraits de code provenant de tutoriels en ligne.

Note : Si vous êtes débutant, nous vous déconseillons fortement de modifier les fichiers de WordPress. Seuls les utilisateurs/utilisatrices expérimentés qui se sentent à l’aise avec la modification du fichier functions.php et qui ont quelques connaissances en PHP devraient essayer ceci.

Les débutants devraient soit utiliser une extension pour accomplir la tâche qu’ils souhaitent réaliser, soit consulter un professionnel pour modifier le code à leur place.

Avant de modifier tout code sur votre site WordPress, nous vous recommandons de sauvegarder votre site dans l’évènement d’une erreur de codage. Si vous n’avez pas d’extension de sauvegarde, alors n’oubliez pas de lire notre article où nous comparons les meilleurs plugins de sauvegarde WordPress.

Nous vous recommandons également de ne pas ajouter le code directement aux fichiers du thème, sinon vous perdrez vos personnalisations lors de la prochaine mise à jour du thème.

Vous devriez plutôt utiliser un plugin d’extraits de code pour ajouter du code personnalisé dans WordPress, créer une extension spécifique au site ou créer un thème enfant et le modifier à la place du thème parent.

Consultez notre guide sur la mise à jour d’un thème WordPress sans perdre en personnalisation.

Quelle est la différence entre les crochets, les actions et les filtres ?

Pour mieux comprendre les filtres dans WordPress, il est utile de voir comment ils sont liés à deux autres termes, les crochets et les actions. Comprendre ces trois termes ensemble rendra le terme « filtre » un peu plus facile à saisir.

Lescrochets sont la base du développement des extensions/développeuses et des thèmes WordPress. Ils permettent aux développeurs/développeuses de « crocheter » leur code personnalisé dans WordPress à des Emplacements spécifiques et de modifier le fonctionnement de WordPress sans modifier les fichiers du cœur.

Il existe deux types de crochets.

  • Les crochets de filtre vous permettent de modifier quelque chose. Ils interceptent les données en cours de traitement et vous permettent de les modifier, puis de les renvoyer. Ils sont utilisés pour filtrer les données envoyées à une base de données ou au navigateur d’un utilisateur/utilisatrice.
  • Les crochets d’action vous permettent de faire quelque chose. Ils vous permettent d’ajouter des fonctionnalités supplémentaires et sont exécutés lors d’évènements tels que l’activation d’un thème ou d’une extension, ou la publication d’un article. Une fois l’action effectuée, ils n’ont pas besoin de renvoyer d’informations.

Ces crochets d’action et de filtre sont à la base du fonctionnement du cœur de WordPress, des thèmes et des extensions. Ils fonctionnent ensemble pour permettre aux développeurs/développeuses une grande flexibilité pour modifier les évènements, les filtres et les actions par défaut de WordPress.

Les développeurs/développeurs peuvent également créer leurs propres actions et filtres personnalisés afin que d’autres développeurs puissent étendre leurs extensions ou leurs thèmes.

Exemples de filtres WordPress

À quoi ressemble un filtre ? Voici quelques exemples.

Imaginons que nous souhaitions afficher une icône en forme d’image lorsqu’une publication appartient à une catégorie particulière. Dans ce scénario, nous créons une fonction qui vérifie si une publication appartient à cette catégorie particulière. Si c’est le cas, l’image est affichée.

Ensuite, nous crochetons cette fonction dans l’évènement the_content. Désormais, chaque fois que l’évènement the_content a lieu, notre fonction est automatiquement déclenchée pour filtrer la sortie de l’évènement the_content.

// First we hook our own function with the_content event
add_filter( 'the_content', 'wpb_content_filter' );
 
// Now we define what our function would do.
// In this example it displays an image if a post is in news category.
function wpb_content_filter( $content ) {
    if ( in_category('news') )
        $content = sprintf('<img class="news-icon" src="%s/images/news_icon.png" alt="News icon" title="" />%s', get_bloginfo( 'stylesheet_directory' ), $content);
 
    // Returns the content.
    return $content;
}

Voici un autre exemple d’utilisation d’un filtre WordPress.

Cet exemple de code ajoute une fonction wpb_custom_excerpt au filtre get_the_excerpt.

function wpb_custom_excerpt( $output ) {
  if ( has_excerpt() && ! is_attachment() ) {
    $output .= wpb_continue_reading_link();
  }
  return $output;
}
add_filter( 'get_the_excerpt', 'wpb_custom_excerpt' );

Vous pouvez en apprendre davantage en étudiant nos guides WordPress qui utilisent des filtres. Par exemple, voici quelques guides qui vous affichent comment réaliser quelque chose de pratique en utilisant les filtres WordPress :

WordPress dispose de nombreux filtres prédéfinis qui permettent aux développeurs/développeuses d’ajouter leur propre code à des endroits spécifiques du cœur de WordPress. L’API des plugins WordPress fournit une liste exhaustive des crochets de filtres disponibles.

Nous espérons que cet article vous a aidé à en savoir plus sur les filtres dans WordPress. Vous pouvez également consulter notre liste de lectures complémentaires ci-dessous pour des articles liés à des astuces, des trucs et des idées utiles sur WordPress.

Si vous avez aimé ce guide, veuillez alors penser à vous abonner/abonner à notre chaîne YouTube pour des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.

Lectures complémentaires

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

L'ultime WordPress Toolkit

Accédez GRATUITEMENT à notre boîte à outils - une collection de produits et de ressources liés à WordPress que tous les professionnels devraient avoir !