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

Wie man den letzten Beitrag aus der WordPress Beitragsschleife ausschließt

Wenn wir Benutzern bei der Einrichtung ihrer WordPress-Blogs helfen, werden wir oft nach der individuellen Anpassung des Layouts gefragt, insbesondere danach, wie man den letzten Beitrag wirklich hervorheben kann.

Manchmal möchten Sie nicht, dass der neueste Beitrag einfach mit dem Rest des Feeds des Blogs verschmilzt. Vielleicht haben Sie ein spezielles Design im Sinn oder möchten, dass er an einer ganz anderen Position erscheint.

Das ist der Punkt, an dem Sie den letzten Beitrag aus der WordPress Beitragsschleife ausschließen können. Dies gibt Ihnen die Flexibilität, die neuesten Inhalte so anzuzeigen, wie Sie es wünschen. In diesem Leitfaden zeigen wir Ihnen zwei Möglichkeiten, wie Sie den letzten Beitrag aus der WordPress-Beitragsschleife ausschließen können.

How to exclude latest post from the WordPress post loop

Warum sollte der letzte Beitrag aus der WordPress-Beitragsschleife ausgeschlossen werden?

Standardmäßig zeigt WordPress Ihre Blog-Beiträge in umgekehrter chronologischer Reihenfolge an, so dass die neueren Beiträge zuerst erscheinen. Sie können jedoch ändern, wie der neueste Beitrag auf Ihrer benutzerdefinierten Startseite oder WordPress-Archivseite angezeigt wird.

Indem Sie den letzten Beitrag aus der WordPress-Beitragsschleife ausschließen, können Sie diesen Inhalt an einer anderen Stelle anzeigen und sogar Ihr eigenes benutzerdefiniertes Styling hinzufügen.

Sehen wir uns also an, wie Sie den letzten Blogbeitrag ausblenden können, indem Sie ihn aus der WordPress-Beitragsschleife ausschließen. Verwenden Sie einfach die unten stehenden Links, um direkt zu der gewünschten Methode zu gelangen:

Der einfachste Weg, den letzten Beitrag aus der Beitragsschleife auszuschließen, ist das Hinzufügen von Code zu Ihrer WordPress-Website.

In einigen Anleitungen wird Ihnen empfohlen, die Themadateien manuell zu bearbeiten, was jedoch zu häufigen WordPress-Fehlern führen und Ihre Website sogar komplett zerstören kann.

Aus diesem Grund empfehlen wir die Verwendung von WPCode. Es ist das beste Code-Snippet-Plugin, mit dem Sie ganz einfach benutzerdefinierten Code in WordPress hinzufügen können, ohne Ihre Website zu gefährden.

Zunächst müssen Sie das kostenlose WPCode-Plugin installieren und aktivieren. Weitere Informationen finden Sie in unserer Schritt-für-Schritt-Anleitung zur Installation eines WordPress-Plugins.

Sobald das Plugin aktiviert ist, gehen Sie zu Code Snippets “ Snippet hinzufügen.

Adding custom code snippets to WordPress

Hier sehen Sie alle vorgefertigten Snippets, die Sie zu Ihrer Website hinzufügen können. Dazu gehört ein Snippet, mit dem Sie Kommentare vollständig deaktivieren, Dateitypen hochladen können, die WordPress normalerweise nicht unterstützt, Seiten mit Anhängen deaktivieren und vieles mehr.

Sie können nun mit der Maus über die Option „Benutzerdefinierten Code hinzufügen (neues Snippet)“ fahren und auf die Schaltfläche „Snippet verwenden“ klicken, wenn diese erscheint.

Adding a custom code snippet to your WordPress website using WPCode

Geben Sie auf dem nächsten Bildschirm einen Titel für das Code-Snippet ein. Dieser dient nur als Referenz, Sie können also alles verwenden, was Sie wollen.

Öffnen Sie dann das Dropdown-Menü „Code-Typ“ und wählen Sie „PHP Snippet“.

Excluding latest blog from the WordPress post loop

Fügen Sie dann einfach den folgenden Text in den Code-Editor ein:

<?php
function wpsites_exclude_latest_post( $query ) {
	if ( $query->is_home() && $query->is_main_query() ) {
		$query->set( 'offset', '1' );
	}
}

add_action( 'pre_get_posts', 'wpsites_exclude_latest_post', 1 );

Blättern Sie dann auf der Seite nach unten zum Abschnitt „Einfügung“.

Wenn es nicht bereits ausgewählt ist, wählen Sie „Automatisch einfügen“ und „Überall ausführen“.

Automatically inserting code into a WordPress website

Scrollen Sie schließlich zum oberen Rand des Bildschirms und klicken Sie auf den Schieberegler „Inaktiv“, so dass er „Aktiv“ anzeigt.

Klicken Sie dann einfach auf die Schaltfläche „Snippet speichern“ oder „Aktualisieren“, um das Code-Snippet zu aktivieren.

Excluding latest blog from the WordPress post loop using WPCode

Wenn Sie nun Ihre WordPress-Website besuchen, wird der letzte Blogbeitrag ausgeblendet.

Methode 2: Bearbeiten von WordPress-Theme-Dateien (kein Plugin erforderlich)

Anmerkungen: Diese Anleitung funktioniert nur mit klassischen WordPress-Themes, da Block-Themes einen anderen Satz von Theme-Dateien haben. Wenn Sie ein Block-Theme verwenden, empfehlen wir, die erste Methode zu verwenden.

Wir empfehlen außerdem, zunächst eine Sicherungskopie Ihrer Website zu erstellen und/oder eine Staging-Umgebung zu verwenden, um Fehler bei dieser Methode zu vermeiden.

Eine weitere Möglichkeit, den letzten Beitrag aus der WordPress-Beitragsschleife auszuschließen, ist das Hinzufügen von Code zu Ihren WordPress-Theme-Dateien.

Damit wird ein ähnliches Ergebnis wie mit dem obigen Code erzielt, aber Sie müssen ihn direkt in die WordPress-Schleife einfügen, wo er angezeigt werden soll.

Wenn Sie z. B. die Post-Loop auf Ihrer gesamten Website ändern möchten, müssen Sie den Code in Ihre index.php-Datei einfügen.

Seien Sie sich nur bewusst, dass das Hinzufügen von Code direkt zu Ihren WordPress-Dateien möglicherweise Probleme mit der Paginierung in Ihrem WordPress-Blog verursachen kann.

Zunächst müssen Sie den Dateimanager Ihres WordPress-Hosting-Anbieters öffnen oder Ihre Website mit einem FTP-Client verbinden.

Für diese Anleitung werden wir den Dateimanager von Bluehost verwenden, da der Vorgang viel einfacher ist als die Verwendung eines FTP. Die Schritte sind jedoch mehr oder weniger dieselben, egal ob Sie einen FTP oder einen anderen Webhost verwenden.

Wenn Sie ein Bluehost-Benutzer sind, loggen Sie sich in das Dashboard Ihres Hosting-Kontos ein und navigieren Sie zur Registerkarte „Websites“. Klicken Sie dann bei der Website, die Sie bearbeiten möchten, auf „Einstellungen“.

Bluehost site settings

Gehen Sie nun zum Abschnitt Quick Links.

Klicken Sie dann auf die Schaltfläche „Dateimanager“. Bluehost zeigt Ihnen auch das Stammverzeichnis Ihrer Website an, wenn Sie es benötigen.

Accessing a website's file manager in Bluehost

Sobald Sie sich im Dateimanager befinden, müssen Sie die Datei suchen, die Sie bearbeiten möchten. Angenommen, Sie möchten den Code zur index.php hinzufügen, dann finden Sie ihn im Ordner Ihres aktuellen Themes, der sich in public_html/wp-content befindet.

Dort klicken Sie mit der rechten Maustaste auf die Datei index.php und dann auf „Bearbeiten“.

Opening the index.php file in Bluehost file manager

Nun müssen Sie den folgenden Code kopieren und in Ihre WordPress-Schleife einfügen:

query_posts('posts_per_page=6&offset=1');

Dieser Code weist die Schleife an, nur die 5 Beiträge anzuzeigen, die auf den letzten Beitrag folgen.

Sie müssen den Code direkt über Ihrer WordPress-Schleife einfügen, so dass er ähnlich wie der unten stehende Codeausschnitt aussieht:

<?php
query_posts('posts_per_page=6&offset=1');
if ( have_posts() ) {

	// Load posts loop.
	while ( have_posts() ) {
		the_post();

		get_template_part( 'template-parts/content/content', get_theme_mod( 'display_excerpt_or_full_post', 'excerpt' ) );
	}

	// Previous/next page navigation.
	twenty_twenty_one_the_posts_navigation();

} else {

	// If no content, include the "No posts found" template.
	get_template_part( 'template-parts/content/content-none' );

}

So sieht unser Code im Bluehost-Dateimanager aus:

Adding code to exclude the latest post in Bluehost file manager

Sobald Sie den Code hinzugefügt haben, klicken Sie einfach auf die Schaltfläche „Änderungen speichern“.

Machen Sie dann weiter und sehen Sie sich Ihre WordPress-Website an.

Weitere Tipps und Tricks zur Verwaltung Ihrer WordPress-Beiträge

Möchten Sie Ihr WordPress-Blog weiter optimieren? Sehen Sie sich diese Anleitungen an:

Wir hoffen, dass dieser Artikel Ihnen geholfen hat zu erfahren, wie Sie den letzten Beitrag aus der WordPress-Schleife ausschließen können. Vielleicht interessieren Sie sich auch für unsere Anleitung zum massenhaften Hinzufügen von Beiträgen und Seiten in WordPress und unsere Expertenauswahl der besten Plugins für verwandte Beiträge in WordPress.

Wenn Ihnen dieser Artikel gefallen hat, dann abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Videotutorials. Sie können uns auch auf Twitter und Facebook finden.

Offenlegung: Unsere Inhalte werden von unseren Lesern unterstützt. Das bedeutet, dass wir möglicherweise eine Provision verdienen, wenn Sie auf einige unserer Links klicken. Mehr dazu erfahren Sie unter Wie WPBeginner finanziert wird , warum das wichtig ist und wie Sie uns unterstützen können. Hier finden Sie unseren redaktionellen Prozess .

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.

Das ultimative WordPress Toolkit

Erhalte KOSTENLOSEN Zugang zu unserem Toolkit - eine Sammlung von WordPress-bezogenen Produkten und Ressourcen, die jeder Profi haben sollte!

Reader Interactions

41 KommentareEine Antwort hinterlassen

  1. George

    This piece of code has helped solved 90% of an issue on my blog.

    • WPBeginner Support

      Glad to hear our code was able to help :)

      Admin

  2. ghazali

    Is there anyway for me to remove only top 3 featured post from the homepage?

  3. ivan logan

    How to remove all posts without featured images(thumbnails), I have 9000 to remover them!

  4. Praveen

    Thanks, Good job, Good Solution

  5. Matt

    Beauty post! Simple, clear, and VERY handy. Cheers to you!

  6. BGH_

    Hey guys, thanks for this article! I want to implement this, but whenever I try I’ve got an strange problem: entries would look like exactly like the frontpage, showing a list of recent post rather than the post itself. My code is slightly different, since is a SMTheme. Any help will be much appreciated. PS: Sorry for posting twice, but the code has printed wrong. Here you go:

  7. space

    Solution is work fine, Thanks. but pagination broke after applying this code, I have tried but not able to work with correct pagination. Any solution to pagination ? .

    • Rickie Anand

      apply class to the li as per the number of page and a counter & give style to p1c1 as display:none;

  8. Sabi Maharjan

    I have used two plugins. One is „Recent facebook post“ to show recent posts in wprdpress and „Facebook publish page“ to publish my wordpress posts in facebook . Now I want exclude the recent post of the facebook that was already posted from my wordpress posts .

    How can I do it ?

    • WPBeginner Support

      For that your plugin posting content from your Facebook page should have a check to see if a post was already published from WordPress to Facebook. We do not recommend users to directly edit plugin files. However, if you are comfortable editing php files then you can fork the plugin as a new plugin and then add the code to accomplish this.

      Admin

  9. Pastor Wynn

    Thanks for the great tip. I had spent hours trying to figure this out, and you made it so simple!

  10. Gu-ens

    Thanks a lot.
    the ‚post__not_in‘ option does not work in wordpress 3.5

  11. Jim

    Hmm, when i tried this code on a category page loop, it couldn’t keep the posts for only that category, instead it acted as if it was the front page loop and displayed all posts.

  12. Amin

    Thank you so much man! This helped a lot!

    Regards!

  13. Fernando

    Thanks a lot!! very usefull tip!

  14. PabloCovarrubias

    hello, i just have one question, when i do this, pagination doesen0t work anymore, how can i fix this?

    thanks, other than that, it works perfectly!!

    cheers!

    • space

      Yes, pagination not working. you have found any working solution for pagination, I am still searching .. :(

      • Kev Bowman

        Did you ever find a solution for this?

        • de hams

          pagination do not work on index page most so we can make out own ajax pagination call and mostly query_posts() works for pagination rather then WP_Query()

  15. Jon

    Thanks so much for this! I couldn’t figure it out at all but this worked perfectly.

  16. Wordpwess

    Is there a way to offset a post from one cat?

    E.g I want to show all posts apart from the LATEST post of category x

  17. Khurram

    „query_posts(‚posts_per_page=6&offset=1‘);“ this is not worked for me , while i am using the WP-PageNavi plugin for page navigation. :(

  18. Ken

    Thanks for the info. Worked well :) Though, I’m encountering another issue for another site I’m currently doing. Is there a way to exclude from the loop only the latest post of a particular category?

    Thing is, I’ve a blog that publishes podcasts. The front page highlights the most recent podcast – posts are published under category: Podcast – via its own styling. At the same time, the front page also shows the last 5 most recent posts, of which may include posts under the category „podcast“. I just don’t want to show in the loop the most recent post published under „Podcast“ simply because it’s already featured with it’s own styling. Hope you can help me out. thanks!

    • Editorial Staff

      You can exclude all posts from the category „postcast“ from your loop if you want. But there is no simple way of excluding just the latest post.

      Admin

  19. Joffrey

    Thanks for the tip!
    But I was wondering if there is also a way to exclude the post that is currently showed on screen.

    If yes, can you tell me how to do this?

    Thanks in advance!

      • Joffrey

        One of my pages displays first of all the latest or current post the user is viewing.

        The current post is called by the loop.

        Below this post I want to display the excerpts of other previous posts without the current post displayed in this list.

        The previous post-excerpts are called by query_posts:

        query(’showposts=3&cat=5′);
        while($previousPosts->have_posts()) : $previousPosts->the_post();
        ?>

        As you can see I call 3 posts(excerpts) from category 5 which displays three posts from category News. This seems ok but within these 3 post-excerpts, the current post which is called by the loop is also in this list.
        Do you know a way to exclude the current post within this list?

        Thanks again!

        • Editorial Staff

          You can add offset=1 in the query to skip the first post.

        • Joffrey

          Thanks again for the quick response!
          However, I did try the offset=1 in the query, only thing is that when you press an older post, you get to see the older post in the main loop, within the list excerpts the latest post is excluded, but the older post which is now the current post is still in the excerpts list.

          Any idea how to exclude not the latest but the current post?

          Thanks so far already :)

        • Editorial Staff

          Email us the live link to the site, so we can see exactly whats going on. Use the contact form for email.

  20. Bilal Ahmed

    Thank you so much for this piece as i was looking for a way to exclude 4 latest posts form my home page and i got answer by this articles and i have replaced (query_posts(‚posts_per_page=6&offset=1‘);) by query_posts(‚posts_per_page=6&offset=3‘); and its done :)

  21. Jeremy

    Where exactly do you put this code to remove al posts but the sticky on the main page.

    Thanks,

    • Editorial Staff

      That is a multi-step process. First you would need to have a custom page template. Second you would need to create that custom page, your front page. Then you would run a query on that custom template showing only sticky posts.

      Admin

  22. dominik

    Thanks, it was exactly what I was looking for! Thanks for any other hints.

Eine Antwort hinterlassen

Danke, dass du einen Kommentar hinterlassen möchtest. Bitte beachte, dass alle Kommentare nach unseren kommentarpolitik moderiert werden und deine E-Mail-Adresse NICHT veröffentlicht wird. Bitte verwende KEINE Schlüsselwörter im Namensfeld. Lass uns ein persönliches und sinnvolles Gespräch führen.