Abfrage Beiträge, Reihenfolge nach Meta-Wert

Ich habe viel gelesen, viel mehr versucht, kann aber nicht bekommen, was ich will: Ich habe benutzerdefinierte Post-Typen, die ich in DESC bestellen möchte, nach ihrem Meta-Wert:

Die vollständige Abfrage mit ihren Argumenten:

wp_reset_query(); $args = array( 'meta_key' => 'completeness', 'order_by' => 'meta_value_num', 'posts_per_page' => -1, 'order' => 'DESC', 'post_type' => 'datensatz', 'post_status' => 'draft' ); $the_query = new WP_Query( $args ); if ( $the_query -> have_posts() ): while ( $the_query -> have_posts()) : $the_query -> the_post(); global $post; echo get_the_title().':'.get_post_meta( $post->ID, "completeness", TRUE ).'
'; endwhile; endif; wp_reset_query();

Diese Abfrage funktioniert nicht. Jede Hilfe würde sehr geschätzt werden.

Ich habe mir gerade die letzte db-Abfrage von $wpdb->last_query und folgendes bekommen:

  "SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (206,200,199,198,197,[..]) ORDER BY meta_id ASC" 

Also meine WP-Abfrage muss falsch sein …

Solutions Collecting From Web of "Abfrage Beiträge, Reihenfolge nach Meta-Wert"

Ihre Anfrage scheint in Ordnung, aber es gibt einige Probleme. wp_reset_query(); anstelle Ihres Codes (von wp_reset_query(); zu wp_reset_query(); ) folgenden Code und lassen Sie uns wissen, was die Ausgabe ist.

 $new_args = array( 'post_type' => 'datensatz', 'post_status' => 'draft', 'posts_per_page' => -1, 'meta_key' => 'completeness', 'orderby' => 'meta_value_num', 'order' => 'DESC', ); $my_new_query = new WP_Query( $new_args ); var_dump( $my_new_query->request ); 

BEARBEITEN

Versuchen Sie es jetzt. Dies sollte auch funktionieren.

 $new_args = array( 'post_type' => 'datensatz', 'post_status' => 'draft', 'posts_per_page' => -1, 'meta_key' => 'completeness', 'orderby' => 'meta_value_num', 'order' => 'DESC', ); $my_new_query = new WP_Query( $new_args ); if ( $my_new_query -> have_posts() ) : while ( $my_new_query -> have_posts()) : $my_new_query -> the_post(); echo get_the_title() . ': ' . get_post_meta( $post->ID, "completeness", TRUE ). '
'; endwhile; endif; wp_reset_postdata();