在查询过滤器之前显示所有 wp_query 个帖子

Show all wp_query posts before query filter

我正在尝试弄清楚如何正确过滤 wp_query。我目前使用的代码运行良好,但结果是 - 它在开头没有显示任何帖子。只有在过滤之后。所以问题在于验证 select 输入。我尝试了多种方法来实现这一目标,但没有成功。

这是我的代码

 $args_main_query = array(
        'post_type' => 'newoldcars',
        'post_status' => 'publish',
        'posts_per_page' => -1, 
        'tax_query' => array(
            array(
            'taxonomy' => 'cars',
            'field'    => 'slug',
            'terms'    => $_POST["car_age"],
            ),
        ),

    );
$query = new WP_Query( $args_main_query );

如何正确操作?

您需要做的只是在选择时添加过滤...

$args_main_query = array(
    'post_type'      => 'newoldcars',
    'post_status'    => 'publish',
    'posts_per_page' => -1 
);
if( isset($_POST["car_age"]) ) {
    $args_main_query['tax_query'] = array(
        array(
           'taxonomy' => 'cars',
           'field'    => 'slug',
           'terms'    => $_POST["car_age"],
        )
    );
}
$query = new WP_Query( $args_main_query );

这样它只会在有人选择了一个值时过滤车龄。