如何使用多个参数执行WP_Query


How do I execute a WP_Query with multiple arguments?

我正在尝试做一个WP_Query,我希望循环只在帖子类型是书籍和类型是$genre中的文本时执行。我一直得到一个错误,因为它显示了所有的帖子在书的帖子类型,而不是特定类型所需的。

我已经试过了:

<?php
$genre ="suspense";
$args = array('post_type' => 'books','genre' => $genre);     
        //Define the loop based on arguments     
        $loop = new WP_Query( $args );   
        //Display the contents   
        while ( $loop->have_posts() ) : $loop->the_post();
?>

需要比较自定义字段的值并执行meta_query。试试下面的代码:

<?php
$genre ="suspense";
$args = array(
    'post_type' => 'books',
    'meta_query' => array(
        array(
            'key' => 'genre',
            'value' => $genre,
            'compare' => '='
        )
    )
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();   
?>

阅读更多关于WordPress Codex在这里:http://codex.wordpress.org/Class_Reference/WP_Query.