Wordpress: eliminar los puestos duplicados en múltiples bucles
Jueves, 2 de julio 2009 El query_posts() función útil query_posts() o WP_Query objeto (que son, pues, básicamente la misma cosa) Wordpress le permite obtener una lista de puestos de establecer los parámetros de búsqueda de muchos (ver un fragmento muy corto: ver una lista de los puestos por categoría o etiqueta ). Precisamente debido a su versatilidad en la investigación de un puesto puede suceder que la función que utiliza dos o más veces en una fila a obtener el "duplicado". Esto puede ocurrir, por ejemplo, cuando se busca (filtros) para las etiquetas, un puesto, de hecho, puede (de hecho, en la mayoría de los casos) se han asociado etiquetas. De ello se deduce que la lista de los puestos con TAG A también podrán presentar un puesto en la lista de los puestos con TAG B
Para eliminar el problema puede proceder de dos maneras diferentes, dependiendo de la versión de WordPress. La primera es dejar de lado todas las IDs del primer bucle con el fin de excluir en el segundo. Esta técnica se puede utilizar para cualquier número de bucles y con la ventaja de ser compatible con versiones anteriores de WordPress:
- / / Primer anillo
- / / La matriz $ ids [] a continuación se utiliza para llevar un registro de
- / / ID del mensaje que he salido con el primer bucle
- ) ; query_posts ( 'category_name = Flash & showposts = 10');
- have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post ();
- = $post -> ID ; $ Ids [] = $ post -> ID;
- / / ... salida
- endwhile;
- / / Segundo anillo
- / / En este caso la salida es lo único
- / / $ Post-> ID no está presente en los $ ids []
- ) ; query_posts ( 'category_name = Adobe & showposts = 10');
- have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post ();
- / / ... salida
- )
- endwhile;
Si la liberación de WordPress que estamos utilizando es de 2,6 o superior, se puede aplicar una variante de comodoa el segundo bucle:
- / / Segundo anillo
- / / WordPress 2.6 +
- / / En este caso es directamente query_posts () para
- / / Excluir los identificadores de los puestos que ya hemos mostrado
- query_posts (
- 4 , 'cat' => 4,
- $ids , 'post__not_in' => $ IDS,
- ));
- have_posts ( ) ) : the_post ( ) ; while (have_posts ()): the_post ();
- / / ... salida
- endwhile;
post__not_in opción con los demás está bien documentada aquí.













[...] Artículo original: Undolog.com »Wordpress: eliminar los puestos duplicados en múltiples lazos Artículos relacionados: Undolog.com" un fragmento muy corto: Wordpress, pronto en el [...]
[...] Fuente: Wordpress: eliminar los puestos duplicados en múltiples lazos Artículos relacionados: Undolog.com »Wordpress: eliminar los puestos duplicados en el circuito de [...]
[...] Wordpress: eliminar los puestos duplicados en múltiples bucles Un pequeño truco para evitar repetir el puesto cuando tenemos dos bucles en la misma página. [...]