2014-05-07 27 views
0

我需要显示奇数编号的WordPress POST ID,然后只显示偶数编号的POST ID。WordPress循环基于ID的奇数编号的帖子,然后甚至基于ID的帖子

有没有办法在下面修改我现在的代码,这样我就可以运行两个循环,一个显示带有奇数ID的帖子,另一个显示偶数ID的帖子?

<!-- loop posts --> 
<?php $loop = new WP_Query(array('post_type' => 'post', 'posts_per_page' => -1, 'orderby'=> 'DESC')); 

while ($loop->have_posts()) : $loop->the_post(); 

$postLink = get_post_meta($post->ID, "postLink", true); 

$classes = array(
    'blogOverviewLoop', 
    'col06', 
    'darkGrey' 
    ); 
?> 

<div <?php post_class($classes); ?>> 
    <article> 
     <?php get_template_part('pf', get_post_format()) ?> 
    </article> 
</div> 
<?php endwhile; ?> 
<?php wp_reset_query(); ?> 
+0

你想要2个循环?或只是所有的帖子与奇数甚至等 – Mark

+0

理想情况下,两个循环 – odd

回答

0

您应该能够使用get_posts

//Arguments 
$args = array('post_type' => 'post', 'posts_per_page' => -1, 'orderby'=> 'DESC'); 
//Get posts with arguments 
$getposts = get_posts($args); 

//Initialize post values 
$posta = array(); 
$postb = array(); 

//Set the counter to 1 
$i=1; 

//Loop as long as there are posts. 
foreach ($getposts AS $post) { 
    //Get an individual post and add it to individual buckets. 
    if($i%2 == 1) { 
     $posta[] = $post; 
    } else { 
     $postb[] = $post; 
    } 
} 

现在postapostb分别包含奇数和偶数的职位。你可以随心所欲地在你的闲暇和后期循环。或者,你可以将数据追加到不同的桶中,而不是将它们分配给不同的变量数组。这将帮助您避免第二个或第三个循环。

有关更多详细信息,请参阅Wordpress Codex Template Tags/get posts

相关问题