Rechercher
Fermer ce champ de recherche.
Fil d'ariane :
»

Raccourcir les div générés par défaut par post_class

Si votre thème utilise la fonction post_class pour généré des div avec une class personnalisée pour chaque article présent dans le loop (ce qui est très pratique pour gérer le style d’un seul élément) vous vous retrouvez avec des div à rallonge qui peuvent devenir très longs et salopent votre code source.

La meilleure chose à faire dans ce cas n’est certainement pas de supprimer post_class mais bien de raccourcir le nombre d’éléments retournés par WordPress. Il n’est nullement nécessaire d’avoir plus de 3 ou 4 éléments.

Exemple :

sur notre page d’accueil avant l’utilisation de ce filtre un div ressemble à :

<article id="post-72" class="post-72 post type-post status-publish format-standard hentry category-optimisation tag-ressources tag-stats"></article>

Après il ressemblera à :

<article id="post-72" class="post-72 post type-post status-publish format-standard"></article>

Vous pouvez même également limiter la class à l’ID du post comme ce :

<article id="post-72" class="post-72"></article>

Comment raccourcir les div générés dans le loop ?

Ajoutez la ligne de code suivante à votre fichier functions.php

// Raccourcir les div par défaut
    function wpln_category_id_class($classes) {
        global $post;
        foreach((get_the_category($post->ID)) as $category)
            $classes[] = $category->category_nicename;
            return array_slice($classes, 0,3);
    }
    add_filter('post_class', 'wpln_category_id_class');

Remplacez 0,3 par le nombre de mot que vous voulez afficher. 0,1 pour n’afficher que post-ID, 1,4 pour afficher les 3 suivants SANS post-ID, etc…

Facebook
Twitter (X)
LinkedIn
WhatsApp
Reddit

Gregory

Agitateur de Stratégiesaddict à WordPress depuis 2003, fada de Google depuis 1998. J’accompagne au quotidien plusieurs entreprises et indépendants dans la gestion de leur stratégie digitale et l’optimisation de leurs sites WordPress.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Sur le même sujet