X

Comment ajouter une classe au premier message dans la boucle

Snippets by IsItWP

Vous cherchez un moyen d’ajouter une classe au premier message dans The Loop ? Ce snippet ajoutera une première classe au premier message dans The Loop, ce qui vous permettra d’ajouter un style unique au premier message.

Instructions:

Tout ce que vous avez à faire est d’ajouter ce code au fichier functions.php de votre thème ou dans un plugin spécifique à votre site:

add_filter( 'post_class', 'wps_first_post_class' );
function wps_first_post_class( $classes ) {
    global $wp_query;
    if( 0 == $wp_query->current_post )
        $classes[] = 'first';
        return $classes;
}

Note : Si c’est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez vous référer à notre guide sur comment copier/coller correctement des extraits de code dans WordPress, afin de ne pas casser accidentellement votre site.

Si vous avez aimé cet extrait de code, n’hésitez pas à consulter nos autres articles sur le site comme : CSS Hero Review.

Commentaires   laisser une réponse

  1. Marek Jakubčík avril 18, 2021 à 9:59 pm

    Any idea why this does not work with woo shortcode? It adds class to each product in the loop. It works ok at the shop page.

    1. Which shortcode are you using?

  2. Hi,

    This has worked great, however, if I have pagination and i go, say, page 2, it adds the class to the first post on page 2, which I don’t particularly want. How would I be able to update the code to add the ‘first’ class to the first post of all the posts, even counting those paginated.

    Thanks a lot for the article it’s been very helpful! 🙂

    1. just add this condition if( 0 == $wp_query->current_post && get_query_var(‘paged’) == 0 ) : ?>

  3. Yeah! for adding a last class to the post, need only to add a condition like $wp_query->current_post === $wp_query->found_posts?

    1. Something like this should work,
      if( $wp_query->current_post == $wp_query->post_count-1 )

      1. Thank you man, i was unsafe about found_posts start from 0 (my bad). However, in same cases post_count isn’t a right choice because it contain the total number of posts being displayed. The use of found_posts or post_count depend which query had been performed, post_count have the same value of “posts_per_page” if is defined in a query or the default value defined into the read settings (sorry for my english).

        1. Hi Widzo, I think it depends on the results you want, if you want to add the class to the last post on every page you would use “post_count” on the very last post only you would use “found_post”

  4. great! And if I want to add a class always to the fourth column of the loop? For example, I have a loop showing my posts into 4 columns and I need to add this class to the right column. How can I do that?

    Thanks

    1. Hi Fabio, I would need to see your columns loop in order to see what would need to be done.

Ajouter un commentaire

Nous sommes heureux que vous ayez choisi de laisser un commentaire. N'oubliez pas que tous les commentaires sont modérés conformément à notre privacy policy, et que tous les liens sont en nofollow. N'utilisez PAS de mots-clés dans le champ du nom. Engageons une conversation personnelle et constructive.

WordPress Launch Checklist

L'ultime liste de contrôle pour le lancement de WordPress

Nous avons rassemblé tous les éléments essentiels de la liste de contrôle pour le lancement de votre prochain site Web WordPress dans un ebook pratique.
Oui, envoyez-moi le gratuit !