如何在WP_Query中使用if / else语句

时间:2012-06-28 21:45:03

标签: php wordpress

我正在尝试使用不同的WP_Query对象,具体取决于正在查看的页面类型。我想这样做而不必一遍又一遍地重复循环。我只想使用带有条件的不同WP_Query语句。这是可能的,还是有另一种方法可以做到这一点?现在我的页面上只有空输出。代码如下。

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

// retrieve posts based on category or pages
$args=array(
    'category_name'=>'name',
    'posts_per_page'=>10,
    'paged'=>$paged
);

if (is_page()) {        
    //create a new instance
    $wp_query = new WP_Query($args);
}

else {
    //create a new instance
    $wp_query = new WP_Query(); 
}

// the Loop
while ($wp_query->have_posts()) : $wp_query->the_post();

// set $more to 0 in order to only get the first part of the post
global $more;
$more = 0;

// Do post layout here

endwhile;

1 个答案:

答案 0 :(得分:0)

$my_args = is_page() ? $args : null;

$my_query = new WP_Query($args);

while ($my_query->have_posts()) : $my_query->the_post();
  ...

$wp_queryglobal variable。避免将它用于那些东西。