Verwenden von post_class zum individuellen Gestalten von Posts

Ich habe eine Homepage, auf der ich den neusten Post anders als die anderen Posts anzeigen möchte. Ich habe post_class nicht benutzt und bin mir nicht sicher, wie.

Würde ich mit post_class erreichen können, was ich will?

Solutions Collecting From Web of "Verwenden von post_class zum individuellen Gestalten von Posts"

Sie sollten post_class (und body_class für diese Angelegenheit) verwenden, aber Sie brauchen es dafür nicht. Ändern Sie Ihren Loop auf Ihrer Homepage, um den ersten Post bedingt zu formatieren.

 $first = (!is_paged()) ? true : false; if (have_posts()) { while (have_posts()) { the_post(); if ($first) { // code to format the first post $first = false; } else { // code to format all the other posts } } } 

Wenn Sie nur eine kleine Änderung über CSS benötigen, können Sie post_class einen Parameter übergeben.

 $first = (!is_paged()) ? 'is_first' : 'not_first'; if (have_posts()) { while (have_posts()) { the_post(); echo '
'; // the rest of your Loop echo '
'; $first = 'not_first'; } }

Es ist eigentlich sehr einfach: Verwenden Sie die $wp_query -Objekt-Eigenschaft current_post . Sie müssen beachten, dass es den Index mit 0 startet, also zähle ich im folgenden Beispiel um eins auf.

 if ( have_posts() ) { while( have_posts() ) { the_post(); ?> 
current_post+1}" ); ?>> < ?php the_title(); the_content(); ?>
< ?php } }

Ich würde nicht PHP-Code verwenden, um dies zu tun. Es fügt “Treffer” hinzu, die nicht notwendig sind. CSS könnte eine bessere Option für Sie sein, z

 .post:nth-child(1) { ... } 

oder

 .post:first-of-type { ... } 

und lassen Sie den Browser das schwere Heben des Styling es machen? Nur ein Gedanke.