Order get_terms durch mehrere Meta-Werte

Ich versuche, alle Bedingungen einer benutzerdefinierten Taxonomie ( ediciones ) zu bekommen, aber geordnet durch zwei ACF Felder: edicion_ano ( edicion_ano ) und edicion_numero ( edicion_numero ). Zuerst sollte nach Jahr und nach dem Nummernfeld sortiert werden.

Ich verstehe von ACF (5.5.X) ist es möglich, meta_query Abfrage zu verwenden, und ich habe Version 5.5.14.

In der neuen Version von ACF (5.5.x) verwendet jetzt Begriff Meta und WP ermöglicht Meta-Abfragen für Begriffe, so dass diese Work-arounds nicht mehr benötigt werden. ( Quelle )

Im Moment benutze ich diesen Code:

 $args = array( 'taxonomy' => 'ediciones', 'hide_empty' => false, 'meta_query' => array( 'relation' => 'AND', 'edicion_ano_param' => array( 'key' => 'edicion_ano', 'compare' => 'EXISTS', ), 'edicion_numero_param' => array( 'key' => 'edicion_numero', 'compare' => 'EXISTS', ), ), 'orderby' => array( 'edicion_ano_param' => 'DESC', 'edicion_numero_param' => 'DESC', ), ); $ediciones = get_terms($args); 

Mit der gleichen meta_query aber mit get_posts() funktioniert es gut. Eigentlich mit get_terms() zeige mir eine Warnung, aber ich weiß nicht warum: Warnung: strtolower () erwartet Parameter 1 als String, Array in … / class-wp-term-query.php in Zeile 824 gegeben

Wenn ich versuche, nur für ein Feld zu bestellen, funktioniert das mit diesem Code:

 $args = array( 'taxonomy' => 'ediciones', 'hide_empty' => false, 'meta_key' => 'edicion_ano', 'orderby' => 'meta_value', 'order' => 'DESC', ); $ediciones = get_terms($args); 

Aber ich brauche Ordnung in beiden Feldern. Irgendeine Idee was ich falsch mache oder wie kann das funktionieren wie ich brauche?

Vielen Dank!

Solutions Collecting From Web of "Order get_terms durch mehrere Meta-Werte"

Das liegt daran, dass get_terms() den Array-Typ nicht als Wert für den Parameter ‘orderby’ akzeptiert. Die Dokumentation sagt über diesen Parameter:

‘Sortieren nach’

(string) Feld (e) zum Bestellen von Begriffen nach. Akzeptiert Begriffsfelder (‘name’, ‘slug’, ‘term_group’, ‘term_id’, ‘id’, ‘description’), ‘count’ für die Taxonomiezahl des Begriffs, ‘include’, um der ‘order’ des $ include zu entsprechen param, ‘meta_value’, ‘meta_value_num’, der Wert von $ meta_key, die Array-Schlüssel von $ meta_query oder ‘none’, um die ORDER BY-Klausel wegzulassen. Standardmäßig “Name”.

Sie können hier die ursprüngliche Dokumentationsseite sehen