Ich versuche, eine Abfrage zu erstellen, die nach mehreren orderby-Werten sortiert. Folgendes habe ich bisher:
$dept_id=2;
$query=new WP_Query(array(
'post_type'=>'wpcontactus',
'nopaging'=>true,
'post_status'=>array('publish', 'pending', 'future'),
'meta_key'=>'wcu_dept',
'meta_value'=>$dept_id,
'orderby'=>'title',
'order'=>'ASC'
));
Ich versuche, einen benutzerdefinierten Beitragstyp abzufragen und in diesem Beitragstyp einen Metawert abzufragen.
Dann möchte ich zuerst nach menu_order
aufsteigend sortieren, dann nach einem benutzerdefinierten Metawert wcu_lastname
aufsteigend. Der orderby-Wert schien jedoch kein Array aufnehmen zu können.
Wie kann ich die Abfrage mit mehreren orderby-Werten bestellen?
$query=new WP_Query(array(
'post_type'=>'wpcontactus',
'nopaging'=>true,
'post_status'=>array('publish', 'pending', 'future'),
'meta_query'=>array(
array('key'=>'wcu_dept','value'=>$dept_id, 'compare'=>'='),
),
'meta_key'=>'wcu_firstname',
'orderby'=>'menu_order wcu_firstname',
'order'=>'ASC'
));
Durch die Verwendung von @kaiser und der Option meta_query
konnte ich die gesuchte Abfrage erhalten.
@Musa wie können wir mehrere Bestellwerte für die Felder setzen? Ich habe mich die gleiche Frage gefragt und Folgendes gefunden:
In 4.0 können Sie jetzt ein Array als Wert für orderby an WP_Query übergeben.
Die Syntax sieht folgendermaßen aus:
$q = new WP_Query( array(
'orderby' => array(
'title' => 'DESC',
'menu_order' => 'ASC'
)
));
Weitere Informationen finden Sie hier: https://make.wordpress.org/core/2014/08/29/a-more-powerful-order-by-in-wordpress-4-0/