Wordpress: Löschen Sie die doppelten Beiträge in mehreren Schleifen
Donnerstag, 2. Juli 2009 Die nützliche Funktion query_posts() oder das Objekt WP_Query (die können dann sind im Grunde dasselbe ist) Wordpress Sie eine Liste der Stellen erhalten, setzen viele Such-Parameter (siehe Sehr kurze Auszug: eine Liste der Stellen nach Kategorie oder Tag ). Gerade wegen seiner Vielseitigkeit in der Forschung der Post kann passieren, dass die Funktion zweimal oder öfter mit in einer Reihe erhalten Sie die "Duplikat". Dies kann zum Beispiel geschehen, wenn Sie nach (Filter) für TAGs, ein Amt in der Tat kann (in der Tat hat sich in den meisten Fällen) haben Tags verbunden. Daraus folgt, dass die Liste der Beiträge mit TAG A auch eine Stelle in der Liste der Stellen mit TAG B abgeben TAG B
Um das Problem zu beseitigen kann auf zwei verschiedene Wege gehen, je nach der Version von WordPress. Die erste ist, beiseite zu legen alle IDs der ersten Schleife, um sie in der zweiten auszuschließen. Diese Technik kann für eine beliebige Anzahl von Schleifen verwendet werden, und den Vorteil, dass mit älteren Versionen von WordPress kompatibel:
- / / First-Schleife
- / / Das Array $ ids [] unten wird verwendet, um Überblick zu behalten,
- / / Id der Post, dass ich ging mit der ersten Schleife
- ) ; query_posts ( 'category_name = Flash & showposts = 10');
- have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post ();
- = $post -> ID ; $ Ids [] = $ post -> ID;
- / / ... Ausgang
- endwhile;
- / / Zweite Schleife
- / / In diesem Fall ist die Ausgabe nur noch
- / / $ Post-> ID ist nicht im $ ids []
- ) ; query_posts ( 'category_name = Adobe & showposts = 10');
- have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post ();
- / / ... Ausgang
- )
- endwhile;
Wenn die Freigabe von WordPress, die wir verwenden, ist 2.6 oder höher, können wir für eine Variante comodoa der zweiten Schleife:
- / / Zweite Schleife
- / / WordPress 2.6 +
- / / In diesem Fall wird er direkt query_posts (), um
- / / Schließen Sie die IDs der Beiträge bereits angezeigt
- query_posts (
- 4 , 'Katze' => 4,
- $ids , "post__not_in '=> $ ids,
- ));
- have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post ();
- / / ... Ausgang
- endwhile;
Option post__not_in mit anderen ist auch hier dokumentiert.













[...] Originalartikel: Undolog.com »Wordpress: Beseitigung doppelte Beiträge in mehreren Schleifen Verwandte Artikel: Undolog.com" Sehr kurze Auszug: Wordpress, bald auf der [...]
[...] Quelle: Wordpress: beseitigen doppelte Beiträge in mehreren Schleifen Verwandte Artikel: Undolog.com »Wordpress: Beseitigung doppelte Beiträge in der Schleife [...]
[...] Wordpress: Löschen Sie die doppelten Beiträge in mehreren Schleifen Ein kleiner Trick, um zu wiederholen, die Post, wenn wir zwei Schleifen sind auf der gleichen Seite. [...]