(che poi sono fondamentalmente la stessa cosa) di WordPress permette di ottenere una lista di post impostando numerosi parametri di ricerca (vedi Very short snippet: visualizzare una lista di post per categoria o tag ). La función de utilidad query_posts() u objeto WP_Query (que básicamente son la misma cosa) WordPress te permite obtener una lista de varios parámetros de búsqueda de post-(ver fragmento muy corto: Muestra una lista de mensajes por categorías o etiquetas ). Precisamente debido a su versatilidad en la búsqueda de mensaje puede ocurrir que la función con dos o más veces en una fila que consigue el "duplicado". Esto puede suceder, por ejemplo, en la búsqueda (filtrado) de TAG, un puesto, de hecho, puede (de hecho lo ha hecho, en la mayoría de los casos) se han asociado etiquetas. . De ello se desprende que la lista de mensajes con TAG A también puede publicar una lista de mensajes con la TAG B .
Para eliminar este problema se puede proceder de dos maneras diferentes, dependiendo de la versión de WordPress. La primera es dejar a un lado todos los números de identificación de la primera vuelta con el fin de excluirlos en la segunda. Esta técnica se puede utilizar para cualquier número de bucles y la ventaja de ser compatible con las versiones antiguas de WordPress:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | / / Primer anillo / / El array $ ids [] se utiliza a continuación para no perder de vista / / Id del mensaje que yo salí con el primer bucle array ( ) ; $ Ids = matriz (); ) ; query_posts ('category_name = Flash & showposts = 10'); have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post (); = $post -> ID ; $ Ids [] = $ post -> ID; / / ... salida endwhile; / / Segundo bucle / / En este caso la salida es lo único que / / $ Post-> ID no está presente en los identificadores de $ [] ) ; query_posts ('category_name = Adobe y showposts = 10'); have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post (); ! in_array ( $post -> ID , $ids ) ) { if ( in_array ($ post -> ID, $ ids)) { / / ... salida } endwhile; |
Si el lanzamiento de WordPress es que estamos usando 2.6 o superior, podemos aplicar una variante comodoa el segundo bucle:
1 2 3 4 5 6 7 8 9 10 11 12 | / / Segundo bucle / / WordPress 2.6 + / / En este caso, es directamente query_posts () para / / Excluir los identificadores de los mensajes que ya hemos mostrado query_posts ( 'showposts' => 10 , serie ('showposts' => 10, 4 , 'Gato' => 4, $ids , "Post__not_in '=> $ ids, )); have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post (); / / ... salida endwhile; |
La opción post__not_in junto con los demás está bien documentado aquí .










[...] Artículo Original: Undolog.com »WordPress: eliminar mensajes duplicados en varios bucles Artículos relacionados: Undolog.com" fragmento muy corto: Wordpress, antes de [...]
[...] Fuente: WordPress: eliminar mensajes duplicados en varios bucles Artículos relacionados: Undolog.com »WordPress: eliminar la duplicación de mensajes en el circuito de [...]
[...] WordPress: eliminar mensajes duplicados en varios bucles Un pequeño truco para evitar que se repita el mensaje, cuando tenemos dos bucles en la misma página. [...]
Artículo muy interesante, tengo una pregunta que podría poner en práctica la ejecución del script:
con este código, si hago clic en la segunda página, automáticamente devolver el mismo después de la primera. ¿Cómo puedo evitar esto?
Gracias