我实际上有一个PHP循环,我给每个结果一个数字,从1开始,然后按升序进行跟进。输出如下:
1)C条 2)B条 3)A条
...但是我想要反转列表号码,所以我得到类似的内容:
3)文章C(文章的顺序不会改变,它们按日期递减)
2)B条
1)A条
这是我目前的循环:
<?php
if (have_posts()) :
$counter = 1;
while (have_posts()) :
the_post(); ?>
<div>
<span class="count"><?php echo $counter; ?></span>
<?php the_title(); ?>
</div>
<?php
$counter++;
endwhile;
endif;
?>
有一种简单的方法吗? 非常感谢,
答案 0 :(得分:2)
WP_Query object has a variable holding the number of posts:
$query->post_count
所以你的代码可以变成:
<?php
if (have_posts()) :
global $wp_query;
$counter = $wp_query->post_count;
while (have_posts()) :
the_post(); ?>
<div>
<span class="count"><?php echo $counter; ?></span>
<?php the_title(); ?>
</div>
<?php
--$counter;
endwhile;
endif;
?>
答案 1 :(得分:1)
如果有一个函数返回帖子计数,例如count_posts()
(只是猜测),用这种方式:
<?php
if (have_posts()) :
$counter = wp_count_posts();
while (have_posts()) :
the_post(); ?>
<div>
<span class="count"><?php echo $counter; ?></span>
<?php the_title(); ?>
</div>
<?php
$counter--;
endwhile;
endif;
?>
答案 2 :(得分:0)
如果这是一个基于wordpress的网站/页面,并且该功能的帖子与wordpress功能相关:
使用query_posts之类的东西可能会更好: http://codex.wordpress.org/Function_Reference/query_posts
哪能让您更好地控制帖子的显示?
编辑: 或者,如果你使用它:
$count_posts = wp_count_posts();
您可以通过撤销计数器($ counter - ;)
将其与其他答案结合使用应该做的伎俩
http://codex.wordpress.org/Function_Reference/wp_count_posts