bestimmte news ausschließen

  • Hallo,

    ich habe zwei Bereiche auf meiner Hauptseite. Im ersten Bereich werden die neusten News (immer drei an der Zahl) angezeigt. Im zweiten werden ältere News angezeigt.

    Momentan ist es so, das auch die drei news mit bei den "älteren" angezeigt werden. Diese sollen aber erst dort landen wenn ich quasi eine vierte News Erstelle, sodass die vorherige dritte News in den zweiten Bereich rutscht.

    Wie lässt sich das realisieren? IDs und Datum müssen ja dynamisch bleiben...

    • 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

  • Und wie hast du die Trennung zwischen Alt und Neu momentan geregelt? Mit verschiedenen query_posts ? Falls ja, fehlt vermutlich ein Parameter im 2. query_posts(): offset

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • 'offset' sollte in den meisten faellen funktionieren
    (ausser wenn auch noch das blaettern zu vorigen/weiteren posts geplant ist)

    eine andere moeglichkeit:

    wenn es zwei loops sind:

    http://codex.wordpress.org/The_Loop#Multiple_Loops_in_Action

    besonders der text nach 'Note for Multiple Posts in the First Category', ueber die verwendung von $do_not_duplicate als array, mit dem query parameter 'post__not_in'

  • also ich habe 2 querys und auch eine vor und zurück navi.

    muss ich jetz in beiden query die änderungen vornehmen?

    query 1 für die ersten 3 News

    PHP
    <?php if (have_posts()) : ?>
    
    
                                    <?php
                                        $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
                                        query_posts($query_string . "&posts_per_page=3&paged=$paged");
                                     ?>
    
    
                                        <?php while (have_posts()) : the_post(); ?>

    query 2 für alle älteren News

    PHP
    <?php if (have_posts()) : ?>
    
    
                                    <?php
                                        $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
                                        query_posts($query_string . "&posts_per_page=6&paged=$paged");
                                     ?>
    
    
                                        <?php while (have_posts()) : the_post(); ?>

    also ich hatte das aus der doku vor...nur irgendwie zerhaut es dann immer alles :(

    PHP
    Alternatively you can pass the entire $do_not_duplicate array to $wp_query and only entries that match your criteria will be returned: 
     <?php query_posts(array('post__not_in'=>$do_not_duplicate));
     if (have_posts()) : while (have_posts()) : the_post();
     ?>

    Einmal editiert, zuletzt von wp_Fuchs (10. Januar 2011 um 16:34)

  • also ich hatte das aus der doku vor...nur irgendwie zerhaut es dann immer alles :(

    PHP
    Alternatively you can pass the entire $do_not_duplicate array to $wp_query and only entries that match your criteria will be returned: 
     <?php query_posts(array('post__not_in'=>$do_not_duplicate));
     if (have_posts()) : while (have_posts()) : the_post();
     ?>

    Kann man davon ausgehen, dass Du die erste Zeile ("Alternatively you can pass the entire $do_not_duplicate array to $wp_query and only entries that match your criteria will be returned: ") eh nicht in Deinem Code drinnen hast?

  • das ist ja der code aus der dokumentation...das andere ist das was in meinen template drinne steht...

    ich bekomm es auch nicht richtig angepasst zusammen mit den code aus der doku :( muss ich den denn bei beiden querys ändern?

    Einmal editiert, zuletzt von wp_Fuchs (10. Januar 2011 um 16:35)

  • hast du es denn mal mit dem Parameter offset im 2. query_posts() versucht?

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • ja das hat geklapt weniger ist manchmal mehr danke :)

    Lösung: 2.query

    Code
    query_posts($query_string . "[COLOR=DarkOrange]&offset=3[/COLOR]&posts_per_page=6&paged=$paged");

    update: das offset geht verloren wenn ich zb. auf ältere Beiträge (Seite 2) klicke...wieso setzt er das zurück ??

    Einmal editiert, zuletzt von wp_Fuchs (16. Januar 2011 um 16:28)

Jetzt mitmachen!

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