示例:
<?php query_posts('cat=1&showposts=5'); ?> <?php while (have_posts()) : the_post(); ?> <li><i class="fa fa-angle-right"></i> <a href="<?php the_permalink(); ?>"><?php the_title();?></a></li> <?php endwhile; wp_reset_query(); ?>
使用时将query_posts()放在循环之前限定你所查询的条件,wp_query会使用你的查询参数产生一个新的SQL语句,从而忽视通过URL接收到的其它的参数,如果想不忽略,可以在调用中使用$query_string。
1、设置文章显示的顺序,但是不干扰其余的查询字符串,参数前须有“&”符号
query_posts($query_string . "&order=ASC")
2、主页不显示某一分类下的日志
if(is_home()){ query_posts("cat=-3"); //不显示分类为3的日志 }
3、获取指定日志
query_posts('p=5');
4、获取特定页面
query_posts('page_id=7'); //只返回页面ID为7的
5、返回特定网页名称的
query_posts('pagename=about');
6、创建文章列表,并提供分页功能
query_posts($query_string.'posts_per_page=-1'); while(have_posts()) { the_post(); put your loop here ; }
7、显示某一个类别的文章
query_posts('cat=4');
8、显示几个类别的文章
query_posts('cat=2,6,17,38');
9、排除某个类别的文章,类别ID前面有个’-’(负号)负号的类被除外
query_posts('cat=-3'); // 负号表示被除外
10、为某个tag提取文章
query_posts('tag=xx-blog主题');
11、获取拥有任何这样的标签的文章
query_posts('tag=xxzhuti,xx-blog主题');
12、获取拥有多个标签的文章
query_posts('tag=xx-blog主题+xxzhuti+wp知识付费主题');
这些参考不是单独的,也可以联合起来使用,如下
13、显示当前时间下类别为13的文章
query_posts($query_string . '&cat=13&monthnum=' . date('n', current_time('timestamp')));
14、显示同时属于类别1和类别3的文章,但是只取两篇,按照标题倒序排列
query_posts(array('category__and'=>array(1,3),'showposts'=>2,'orderby'=>title,'order'=>DESC));