Kaedah untuk penapisan "orderby" (ASC dan DESC) WP_Query menggunakan meta_query
<p>Saya cuba menapis siaran mengikut 'DESC' menggunakan metadata tersuai 'like_count_on_post' dan kemudian kumpulkan semua kosong 'like_count_on_post' dan 'dislike_count_on_post' dan akhirnya mengisih mengikut 'ASC' daripada 'dislike_count_on_post' tetapi saya hanya boleh Mendapatkan suka dalam tertib menurun, atau jika saya memadamkan: </p>
<blockquote>
<p>'nilai_bidang_suai' => 'DESC'</p>
</blockquote>
<p>Saya boleh mendapatkan tertib menaik mengikut langkah, tetapi bukan kedua-duanya pada masa yang sama. </p>
<p>Kod parameter pertanyaan: </p>
<pre class="brush:php;toolbar:false;">$args = array(
'post_status' => 'terbitkan',
'post_type' => 'sveikinimai',
'meta_query' => tatasusunan(
"hubungan" =>
'suka' => array(
"hubungan" =>
'nilai_bidang_suai' =>
'kunci' = > '_suka_kira_pada_siaran_',
),
'custom_field' => array(
'kunci' = > '_suka_kira_pada_siaran_',
'compare' => 'TIDAK WUJUD',
),
),
'tidak suka' => tatasusunan(
"hubungan" =>
'custom_field_value_2' =>
'key' => '_tidak suka_kira_pada_siaran_',
),
'custom_field_2' =>
'key' => '_tidak suka_kira_pada_siaran_',
'compare' => 'TIDAK WUJUD',
),
),
),
'orderby' => array(
'custom_field_value' => 'DESC',
'custom_field_value_2' => 'ASC'
),
'posts_per_page' =>
'paged' => $paged,
);</pra>
<p>Kemas kini, jika anda ingin menapis medan metadata yang tidak wujud, berikut ialah kodnya: </p>
<pre class="brush:php;toolbar:false;">$args = array(
'post_status' => 'terbitkan',
'post_type' => 'sveikinimai',
'meta_query' => tatasusunan(
"hubungan" =>
'nilai_bidang_suai' =>
'kunci' = > '_suka_kira_pada_siaran_',
),
'custom_field_value_2' =>
'key' => '_tidak suka_kira_pada_siaran_',
),
),
'orderby' => array(
'custom_field_value' => 'DESC',
'custom_field_value_2' => 'ASC'
),
'posts_per_page' =>
'paged' => $paged,
);</pre></p>