Letzter Beitrag in einem Loop

  • Ich habe mir einen Loop gebastelt z.B. der Art

    <?php $recent = new WP_Query("cat=$cat_id&showposts=2&offset=1"); while($recent->have_posts()) : $recent->the_post();?>

    Unter jedem Artikel soll eine Linie kommen

    <div style="border-bottom:1px dotted #DDDDDD; margin-bottom:10px; padding:0px 0px 10px 0px; clear:both;"></div>

    nur nicht unter dem jeweils letzten Artikel im Loop.

    Wie kann ich um das div style="border-bottom: eine if oder while-Abfrage bauen, um genau dies auszuschließen?

    Habe mit <?php if(have_posts()): ?> experimentiert, aber das hilft leider nicht..

    Danke!

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • zählen

    sagen wir du hast 10 Artikel pro Seite dann sollte der Border bei <10 da sein

    PHP
    <?php $recent = new WP_Query("cat=$cat_id&showposts=2&offset=1"); while($recent->have_posts()) : $recent->the_post();
    $pcounter++;
     
    ?>




    [COLOR=#000088]nun wird gezählt[/COLOR]

    [COLOR=#000088]dort wo der Border erscheinen sollte [/COLOR]

    PHP
    <?php if ($pcounter  < 10) { ?>
    Dein Div ..
     
    <?php } ?>



    [COLOR=#000088]hilfts?[/COLOR]
    [COLOR=#000088]lg[/COLOR]

  • Vielen Dank für die schnelle Antwort!

    Ok über einen Zähler, die Grenze muss ich dann halt immer anpassen im Code wenn ich mal mehr mal weniger Artikel im Loop anzeigen lassen will, aber das müsste ich wegen des offset eh.

    Eine "automatische" Abfrage nach der Art kommt im Loop noch ein Artikel gibt es nicht?

    Wenn Zähler übrig bleibt, muss ich den nicht jedesmal sauber auf Null setzen (wie und wo mache ich das am besten) oder schreibt der sich eh immer neu?

  • Anstelle der hardcodierten "10" kann man besser $wp_query->post_count verwenden, dann paßt es immer :-)

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Mit dem Zähler funktioniert, mit

    <?php if ($pcounter < $wp_query->post_count) { ?>

    allerdings nicht, auch nicht mit -1.. Sicher dass er da nur die Posts im aktuellen Loop zählt?

  • Oh, tschuldigung, hatte nicht aufmerksam gelesen. Bei einer eigenen Abfrage wie oben muß dann natürlich $recent->post_count verwendet werden.

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Die Option gibt ja nur die maximale Anzahl zurück, die eigentliche Abfrage liefert aber möglicherweise weniger Treffer.

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!