Tengo un tipo de publicación personalizada llamada portfolio
y una taxonomía personalizada llamada build-type
(actuando como categorías)
estoy tratando de consultar portfolio
Publicaciones por build-type
ID, por ejemplo, todas las publicaciones de la cartera en “Hoteles” (id=4 para esa taxonomía)
// gets the ID from a custom field to show posts on a specific page
$buildType = get_post_meta($post->ID, 'build_type_id', true);
// run query
query_posts(array(
'post_type' => 'portfolio',
'showposts' => -1,
'tax_query' => array(
'taxonomy' => 'build-type',
'terms' => $buildType,
'field' => 'term_id'
),
'orderby' => 'title',
'order' => 'ASC'
));
Actualmente está llamando todos portfolio
publicaciones y no solo aquellas con el build-type
IDENTIFICACIÓN
Para 'field' => 'term_id'
debería estar usando term_id
, tag_ID
, id
¿o algo mas?
¿Alguien sabe cómo hacer que esto funcione?
¡Gracias por adelantado!
mattberridge
Lo resolví con la ayuda de: https://wordpress.stackexchange.com/questions/30476/query-posts-by-custom-taxonomy-id
tax-query
tiene que ser una matriz de matrices
La solución definitiva es:
// gets the ID from a custom field to show posts on a specific page
$buildType = get_post_meta($post->ID, 'build_type_id', true);
// run query
query_posts(array(
'post_type' => 'portfolio',
'showposts' => -1,
'tax_query' => array(
array(
'taxonomy' => 'build-type',
'terms' => $buildType,
'field' => 'term_id',
)
),
'orderby' => 'title',
'order' => 'ASC' )
);
En github aquí:
No soy un experto en WP y he invertido horas y horas tratando de resolver el mismo problema. Finalmente encontré esta publicación de blog: http://richardsweeney.com/blog/wordpress-3-0-custom-queries-post-types-and-taxonomies/
La respuesta es algo semi-mala: aparentemente no puedes filtrar así para tipos de publicaciones personalizadas (solo es posible para publicaciones), ¡lo cual es una pena!
Lo que me funcionó fue esto:
$argumentos[‘custom_tax’] = ‘impuesto_personalizado_slug’; query_posts($argumentos);
¡Espero eso ayude!
//Miguel