Get_Query_var()在Pre_Get_Posts中不起作用

时间:2013-01-15 作者:dSquared

我正在使用pre_get_posts 钩子可以使用自定义元值对所有自定义帖子类型/分类页面上的主查询进行排序。作为逻辑的一部分,我试图通过使用get_query_var(\'taxonomy\'), 但是,无论我尝试什么,它都会不断返回一个空白字符串:

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\');
任何帮助都将不胜感激;谢谢

1 个回复
SO网友:HU ist Sebastian

你试过这个吗?

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\');
快乐的编码,

Kuchenundkakao

结束