标签:res log odex 数据 _id array ref blog post
为什么要学WP_Query?
wordpress默认会根据网址调用数据,不能满足我们所有建站要求,而WP_Query可以用于查询任何你想要的内容,相当于自定义数据调用。
便于记忆,在讲用法之前我们回顾一下循环的写法:if..else 其他>>>
<?php if( have_posts() ) : while( have_posts() ) : the_post(); ?> <!-- 在这里调用数据 --> <?php endwhile; ?> <?php endif; ?>
WP_Query用法:设定条件->查询->循环调用,下面可以看出循环的用法就是比以前的多了个$query->
<?php // 1.用于查询的参数或者参数集合 $args = array( ‘post_type‘=>‘post‘ ); // 2.查询 $query = new WP_Query( $args ); // 3.判断查询的结果,有内容则循环 if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); // 内容输出 echo ‘<a href="‘.get_the_id().‘">‘ . get_the_title() . ‘</a>‘; } } // 4.重置请求数据 wp_reset_postdata(); ?>
然后我们搜索不同的内容只需要修改里面的条件就可以了~实战一下吧
调用单篇信息:
根据文章id查询文章信息=http://localhost/wordpress/?p=36 数据
$query = new WP_Query( ‘p=36‘ );
等同:
$args = array( ‘p‘=>‘36‘ ); $query = new WP_Query( $args );
根据文章分类调用数据 = http://localhost/wordpress/?cat=8 数据
$query = new WP_Query( ‘cat=9‘ );
根据页面的ID调用数据 =http://localhost/wordpress/?page_id=7 数据
$query = new WP_Query( ‘page_id=7‘ );
...
=================================================================
如果调用多篇信息呢?
调用文章id为34、32、30的,
$args = array( ‘post__in‘=>array(34,32,30) );
还有排除法,除了文章id为3的都显示:
$args = array( ‘post__not_in‘=>array(3) );
post__in默认调用的是文章信息,如果要调用页面,则需要指定类型
$args = array( ‘post_type‘=>‘page‘, ‘post__in‘=>array(3) );
=================================================================
调用全部页面
$query = new WP_Query( ‘post_type=page‘ );
调用全部文章
$query = new WP_Query( ‘post_type=post‘ );
基本的练习完成了,想必你已经知道函数的用法了,给自己列个条件清单吧~那以后就可以直接拿来用了
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
标签:res log odex 数据 _id array ref blog post
原文地址:http://www.cnblogs.com/tinyphp/p/6379959.html