it-swarm.com.de

get_query_var () funktioniert nicht in pre_get_posts

Ich benutze den Hook pre_get_posts, um die Hauptabfrage auf allen meinen benutzerdefinierten Beitragstyp-/Taxonomieseiten mit einem benutzerdefinierten Metawert zu bestellen. Als Teil der Logik versuche ich, mithilfe von get_query_var('taxonomy') zu ermitteln, welche Taxonomie derzeit angezeigt wird. Unabhängig davon, was ich versuche, wird immer eine leere Zeichenfolge zurückgegeben:

function sort_query($query)
    ...
    if (is_tax()){
        ...
        echo get_query_var('taxonomy'); // Empty
        echo get_query_var($query->query_vars['taxonomy']); // Empty
        ...
    }
}
add_action('pre_get_posts', 'sort_query');

Jede Hilfe wäre sehr dankbar; Vielen Dank!

5
dSquared

Hast du das probiert?

function sort_query($query)
    if ($query->is_tax() && $query->is_main_query()){
        echo $query->query_vars['taxonomy']; 
        $query->set( 'orderby', 'post_title' );
        $query->set( 'order', 'ASC' );
        //do other stuff
    }
}
add_action('pre_get_posts', 'sort_query');

Happy Coding,

Kuchenundkakao

2
kuchenundkakao