Benutzerdefinierte Abfrage mit query_posts zeigt keinen Beitrag ohne bestimmte meta_key

wordpress.stackexchange https://wordpress.stackexchange.com/questions/2257

  •  16-10-2019
  •  | 
  •  

Frage

Ich verwende Query_Posts, um bestimmte Kategorien zu sortieren. Mein Code sieht so aus:

query_posts('category_name=abs&orderby=meta_value_num&meta_key=field_ordering&order=DESC');

Dies zeigt einen Beitrag im exakten Sortiermodell, wie ich angeben. Die obige Abfrage zeigt jedoch nicht, dass der Beitrag nicht hat meta_key 'field_ordering' in der Datenbank festgelegt.

Mein Problem ist, dass ich es nicht auf alle Posts einstellen möchte, aber ich kann die Daten immer noch anzeigen.

Irgendwelche Lösungen?

War es hilfreich?

Lösung

Nun, Sie können nicht nach Feld sortieren, das ist nicht da. Sie können die Abfrage nur in diesen Kategorien, die dieses Feld haben, bedingt ändern und die Standardabfrage in Ruhe arbeiten lassen.

Es wäre so etwas wie:

if( is_category('abs') )
    query_posts(
    array_merge(
    array('orderby' => 'meta_value', 
                  'meta_key' => 'field_order', 
                  'order' => 'Desc' ),
    $wp_query->query
        )
    );
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit wordpress.stackexchange
scroll top