¿Hay una manera fácil de consultar cualquier publicación que esté etiquetada con algún término de una taxonomía particular?
Conozco esta técnica:
$custom_taxonomy_query = new WP_Query(
array(
'taxonomy_name' => 'term_slug',
)
);
Pero me gustaría pasar un comodín en lugar de term_slug, o tal vez solo una cadena vacía. Entonces eso me daría todas las publicaciones etiquetadas por cualquier término en esa taxonomía, no solo un término específico.
Gracias por tu ayuda, Dave

Algo como esto podría funcionar:
$ args = array ( 'post_type' => 'post', 'tax_query' => array ( formación( 'taxonomy' => 'your_custom_taxonomy', 'operator' => 'EXISTE' ), ), ); $ query = new WP_Query ($ args);Básicamente, está solicitando cualquier publicación asignada a cualquier término dentro de your_custom_taxonomy.
fuente
Hola @Dave Morris:
Tienes razón, WordPress decide que si no tienes un término, simplemente ignorarán tu taxonomía.
Hay tres (3) enfoques principales que puede probar:
Use una consulta SQL completa con
$wpdb->get_results(),Obtenga una lista de
$post->IDs para todas las publicaciones en su taxonomía y luego páselos usando el'post__id'argumento, oAnote el SQL utilizado por
WP_Queryuno de los ganchos que le permite agregar un SQL que haceINNER JOINreferencia a las tablas de taxonomía.Intento evitar el SQL completo en WordPress hasta que no se puede evitar o simplemente devuelve una lista de ID. Y en este caso, evitaría obtener una lista de
$post-IDs para usar con el'post__id'argumento porque podría tener problemas de rendimiento e incluso problemas de memoria si tuviera muchas publicaciones. Entonces eso nos deja con el # 3.He creado una clase para extender
WP_QueryllamadaPostsByTaxonomyque usa el'posts_join'gancho'. Puedes verlo aqui:Llamarías a esta clase como ves a continuación. El argumento
'taxonomy'es obligatorio, pero también puede pasar cualquiera (¿todos?) De los otros parámetros queWP_Queryespera, como'posts_per_page':Puede copiar la
PostsByTaxonomyclase en elfunctions.phparchivo de su tema , o puede usarlo dentro de un.phparchivo de un complemento que esté escribiendo.Si desea probarlo rápidamente, publiqué una versión autónoma del código en Gist que puede descargar y copiar en la raíz de su servidor web
test.php, modificar para su caso de uso y luego solicitarlo desde su navegador usando una URL comohttp://example.com/test.php.ACTUALIZAR
Para omitir publicaciones fijas de las publicaciones incluidas en la consulta, intente esto:
O si es importante para usted que la
PostsByTaxonomyclase nunca incluya publicaciones fijas, puede ponerlas en el constructor:ACTUALIZACIÓN 2
Después de publicar lo anterior, aprendí que 'caller_get_posts' quedará en desuso y
'ignore_sticky_posts'se usará en WordPress 3.1.fuente
caller_get_posts=1y deberían desaparecer: codex.wordpress.org/Function_Reference/… Espero que esto ayude.if(isset($query->posts_by_taxonomy))un buen truco para combinar la metodología orientada a objetos con la metodología de enlace de WordPress.Debería poder establecer la taxonomía y negar para incluir un término.
P.ej.
Lo que sería más o menos lo mismo que la consulta que realiza un archivo de taxonomía.
fuente
WP_Querysimplemente bótelo.WP_Querydesafortunadamente no se implementa de una manera tan elegante. Son casi 1200 líneas de cajas especiales codificadas.