WordPress 文章列表按自定义栏目值排序
使用WordPress做网站时,通常会使用以下的代码来调用网站文章列表:
<?php if (have_posts()) : ?>
<?php query_posts('cat=ID号' . $mcatID. '&caller_get_posts=1&showposts=显示数量'); ?>
<?php while (have_posts()) : the_post(); ?>
<?php endwhile;?>
<?php endif; wp_reset_query(); ?>
这样调用出来的文章列表的排序是按照文章的发布时间来排序的。
但实际做网站时,我们需要按照某个自定义的顺序进行排序,例如:文章浏览量、文章评论数、热门文章排行榜等等。这就不能使用上面的代码调用了。
如果想让调用的文章列表按自定义排序,就需要使用WordPress文章自定义栏目。通过自定义栏目就可以让文章列表按照自己的要求进行排序了。
下面是Wordpress 文章列表按自定义栏目值排序代码:
<?php
$args=array(
'meta_key' => 'views',
'orderby' => 'meta_value_num',
'posts_per_page'=>20,
'order' => 'DESC'
);
query_posts($args); while (have_posts()) : the_post();?>
<li><a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a><span class="hot fr">热度:<?php setPostViews(get_the_ID()); echo number_format(getPostViews(get_the_ID())); ?></span></li>
<?php endwhile;wp_reset_query();?>
代码中'meta_key' => 'views',是自定义栏目中的views,'orderby' => 'meta_value_num',代表排序是按照自定义栏目中的views的值来排序。
相关功能代码:WordPress 实现通过自定义字段查询和排序