WordPress WP_Query ‘orderby’ funktioniert nicht

Lesezeit: 1 Minute

Benutzer-Avatar
Vinzenz Listrani

Meine Abfrage ordnet meine Posts nicht mit dem orderby Parameter.

Ein kleiner Hintergrund:

Ich befinde mich in einer foreach-Anweisung, die eine benutzerdefinierte Taxonomie für “Kategorie”-IDs durchläuft. Während ich in dieser foreach-Anweisung versuche, eine neue WP_Query aufzurufen, die Beiträge aus jeder “Kategorie” dieser foreach-Schleife erhält. Mein args-Array ist wie folgt:

$args = array(
    'post_type' => 'wpsc-product',
    'post_status' => 'publish',
    'showposts' => -1,
    'tax_query' => array(
        array(
            'taxonomy' => 'wpsc_product_category',
            'field' => 'term_id',
            'terms' => $cat_id,
        ),
        array(
            'taxonomy' => 'series',
            'field' => 'slug',
            'terms' => $series_name
        )
    ),
    'orderby' => 'title',
    'order' => 'DESC'
);

$cat_id und $series_name sind beide Arrays aus meinen benutzerdefinierten Taxonomien in diesem post_type.

orderby und order funktionieren überhaupt nicht und ich kann mir das nicht erklären warum.

Benutzer-Avatar
Wladimir

Ich habe Ihren Code in meinem Testblog überprüft. Und es funktioniert wie erwartet. Also Parameter

'orderby' => 'title',
'order' => 'DESC'

du hast richtig eingestellt.

In dieser Situation können Sie die SQL-Anforderung überprüfen.

$query = new WP_Query($args);
var_dump($query->request);

  • hier ist auch die Ausgabe: GROUP BY wp_posts.ID ORDER BY wp_posts.menu_order, wp_posts.post_date DESC

    – Vinzenz Listrani

    19. November 2012 um 19:49 Uhr


  • Wenn Sie hinzufügen remove_all_filters('posts_orderby'); vor dem Laufen new WP_Query das wird manchmal die Bestellprobleme beheben.

    – David Yeiser

    11. Mai 2015 um 13:40 Uhr

  • Es ist eine Art Hard-Reset, von dem, was ich verstehe, werden einige Plugins versehentlich die Bestellung beeinflussen.

    – David Yeiser

    29. März 2016 um 16:52 Uhr

  • @DavidYeiser Ja, ich hatte ein Plugin, das meinen Orderby-Parameter überschrieben hat. var_dump($query->request); geholfen, das aufzudecken.

    – Tobe_Sta

    20. April 2016 um 9:16 Uhr

  • @DavidYeiser Danke 🙂

    – Arsalan Scheich

    4. Oktober 2016 um 8:00 Uhr

1373710cookie-checkWordPress WP_Query ‘orderby’ funktioniert nicht

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy