Cum să obții articolele unui termen de taxonomie personalizată
Sper că cineva mă va ajuta:
Am un Tip de Articol Personalizat (Film) cu propria sa taxonomie personalizată (Producător), această taxonomie are propriii termeni, de exemplu 'WarnerBros'.
Cum pot obține toate articolele pentru termenul meu (WarnerBros)?
Am următorul cod, dar încă nu funcționează.
$args = array(
'post_type' => 'movie',
'tax_query' => array(
array(
'taxonomy' => 'producer',
'field' => 'slug',
'terms' => 'WarnerBros',
),
),
);
$query = new WP_Query( $args );
După ce m-am jucat cu codul am rezolvat problema, voi împărtăși codul meu pentru cineva cu aceeași problemă:
$type = 'Movie'; // Numele Tipului de Articol Personalizat $tag = 'WarnerBros'; // Termenul Tău
$args = array( 'post_type' => $type, 'paged' => $paged, 'posts_per_page' => -1, 'orderby' => 'menu_order', 'order' => 'ASC', 'tax_query'=>array( array( 'taxonomy'=>'Producer', //Numele Taxonomiei 'field'=>'slug', 'terms'=>array($tag) )) );
$loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); if(is_object_in_term($post->ID,'Taxonomy_Name','Your_Term')) // Producer și WarnerBros {
echo '<div id="YourID">'; echo the_title(); echo '</div>';
} endwhile;

Această întrebare are răspunsuri diferite în această problemă specifică WordPress, care vă pot fi de ajutor:
Personal, am folosit această metodă care a funcționat perfect pentru mine:
$terms = get_terms('tax_name');
$posts = array();
foreach ( $terms as $term ) {
$posts[$term->name] = get_posts(array( 'posts_per_page' => -1, 'post_type' => 'post_type', 'tax_name' => $term->name ));
}
Adaptând-o la scenariul dumneavoastră, acest cod ar trebui să funcționeze:
$terms = get_terms('producer');
$posts = array();
foreach ( $terms as $term ) {
$posts[$term->name] = get_posts(array( 'posts_per_page' => -1, 'post_type' => 'movie', 'tax_name' => $term->name ));
}
Acum puteți obține articolele dumneavoastră:
print_r($posts["WarnerBros"]);

Încearcă așa
$args = array(
'post_type' => 'movie',
'tax_query' => array(
array(
'taxonomy' => 'producer', // taxonomia producător
'field' => 'slug', // câmpul pentru căutare
'terms' => 'WarnerBros', // termenul de căutat
),
),
);
$query = new WP_Query( $args ); // inițializarea interogării
Vezi mai multe pe WordPress Codex

Să presupunem că aveți un tip de postare personalizată plays și sub taxonomia genre doriți să găsiți toate postările din categoria comedy
$args = array(
'post_type' => 'plays', /*Tipul de postare (plays)*/
'tax_query' => array(
array(
'taxonomy' => 'genre', /*Taxonomia pentru căutare (genre)*/
'field' => 'slug',
'terms' => 'comedy', /*Căutare categorie pentru (comedy)*/
),
),
);
$query = new WP_Query( $args );
