Saya menemukan pertanyaan ini:
Apakah ada cara untuk menggunakan $ query-> set ('tax_query' di filter pre_get_posts?
yang tampaknya menunjukkan bahwa ya, Anda dapat mengubah kueri taksonomi pada arsip taksonomi melalui pre_get_posts (). jadi saya datang dengan
add_action('pre_get_posts', 'kia_no_child_terms' );
function kia_no_child_terms( $wp_query ) {
if( is_tax() ) {
$wp_query->tax_query->queries[0]['include_children'] = 0;
}
}
sebaik
add_action('pre_get_posts', 'kia_no_child_terms' );
function kia_no_child_terms( $wp_query ) {
if( is_tax() ) {
$tax_query = $wp_query->get( 'tax_query' );
$tax_query->queries[0]['include_children'] = 0;
$wp_query->set( 'tax_query', $tax_query );
}
}
untuk mencoba mengatur parameter include_children ke false ... dan hampir setiap kombinasi dari keduanya dapat saya pikirkan. Namun sejauh ini, arsip taksonomi masih menunjukkan item dalam istilah anak
dan tes berikut sepertinya menambah ADD permintaan pajak bukannya menimpa mereka ... yang hanya membingungkan saya.
function dummy_test( $wp_query){
$tax_query = array(
'relation' => 'OR',
array(
'taxonomy' => 'tax1',
'terms' => array( 'term1', 'term2' ),
'field' => 'slug',
),
array(
'taxonomy' => 'tax2',
'terms' => array( 'term-a', 'term-b' ),
'field' => 'slug',
),
);
$wp_query->set( 'tax_query', $tax_query );
);
add_action('pre_get_posts','dummy_test');
bukankah SET harus menimpa nilai saat ini?