Tassonomia Personalizzata con tax_query
Ho creato un tipo di tassonomia personalizzata con un plugin (CMS Press) e ora sto cercando di ottenere tutti i post con i termini della tassonomia in quella tassonomia.
Il mio get_posts appare così:
$args = Array(
'numberposts' => 5,
'offset' => 0,
'post_status' => 'publish',
'content-type' => 'my-term'
);
get_posts($args);
Ho anche provato:
$args = Array(
'numberposts' => 5,
'offset' => 0,
'post_status' => 'publish',
'tax_query' => Array( Array (
'taxonomy' => 'content-type'
'field' => 'slug'
'terms' => 'my-term'
));
get_posts($args);
Questo funziona bene quando non sto usando una tassonomia personalizzata. Se cambio la mia richiesta in:
$args = Array(
'numberposts' => 5,
'offset' => 0,
'post_status' => 'publish',
'tax_query' => Array( Array (
'taxonomy' => 'post_tags'
'field' => 'slug'
'terms' => 'some-tag'
));
get_posts($args);
funziona.
Mi chiedevo se sto tralasciando qualcosa che impedisce l'interrogazione delle tassonomie personalizzate. Qualsiasi aiuto sarebbe apprezzato.

Dal WordPress codex per wp_query:
Mostra i post taggati con bob, sotto la tassonomia personalizzata 'people':
$args = array(
'post_type' => 'post',
'people' => 'bob'
);
$query = new WP_Query( $args );
Mostra i post taggati con bob, sotto la tassonomia personalizzata 'people', utilizzando tax_query:
$args = array(
'post_type' => 'post',
'tax_query' => array(
array(
'taxonomy' => 'people',
'field' => 'slug',
'terms' => 'bob'
)
)
);
$query = new WP_Query( $args );
Vedi la pagina del Codex per ulteriori esempi.

La causa più probabile di questo problema è l'uso di trattini (-
) nel nome della tua tassonomia personalizzata. I trattini sono estremamente problematici quando utilizzati nei nomi delle tassonomie personalizzate, quindi per regola dovrebbero essere evitati a tutti i costi.
Se hai bisogno di separare i nomi in una tassonomia personalizzata, o anche in un nome di post type personalizzato, dovresti usare esclusivamente underscore (_
). Evita anche l'uso di camelcase, numeri come primo carattere e qualsiasi tipo di carattere speciale.
