avianex / Online Performance Marketing / Know-How / Wie man den letzten Post aus dem WordPress-Loop entfernt

Wie man den letzten Post aus dem WordPress-Loop entfernt

Manchmal möchte man in einem Loop spezifisch den aktuellen Post nicht erscheinen lassen. Wie funktioniert das?

Praktisch ist dies wenn man z.B. im Rahmen der Theme-Entwicklung bewusst einen Teaser-Post darstellen möchte, um den jeweils aktuellen Beitrag dadurch zu pushen. In diesem Fall würde man zwei Loops aufbauen, einen mit dem aktuellsten Post (Anzahl der Posts also limitiert auf 1) und darunter einen Loop mit Folgeartikeln. Dieser zweite Loop sollte den aktuellsten Post aber nicht nochmal zeigen. Folgendes Snippet veranschaulicht wie das geht.

<?php $query = new WP_Query( 'posts_per_page=10&offset=1' ); ?>

<?php while ( $query->have_posts() ) : $query->the_post(); ?>
	<!-- Hier werden jetzt die Post-Daten geloopt - nur nicht er letzte Post -->
<?php endwhile; ?>

Durch „offset=1“ wird der aktuelle Post ausgespart – vielmehr ist es eigentlich gar nicht. Wichtig zu erwähnen wäre noch, das bei der Verwendung mehrerer Loops auf einer Seite diese jeweils resettet werden sollten und zwar via

wp_reset_query();

Das war´s auch schon – vielen Dank für die Aufmerksamkeit! 😉

kommentieren