为什么要学WP_Query?

wordpress默认会根据网址调用数据,不能满足我们所有建站要求,而WP_Query可以用于查询任何你想要的内容,相当于自定义数据调用。

便于记忆,在讲用法之前我们回顾一下循环的写法:if..else 其他>>>

<?php if( have_posts() ) : while( have_posts() ) : the_post(); ?>
<!-- 在这里调用数据 -->
<?php endwhile; ?>
<?php endif; ?>

WP_Query用法:设定条件->查询->循环调用,下面可以看出循环的用法就是比以前的多了$myquery->

<?php
// 1.用于查询的参数或者参数集合
$args = array(
'post_type'=>'post'
); // 2.查询
$myquery=new WP_Query($args); // 3.判断查询的结果,有内容则循环
if($myquery->have_posts()):while($myquery->have_posts()):$myquery->the_post();
?> //输出循环结构 <?php
endwhile;
endif;
// 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' );

基本的练习完成了,想必你已经知道函数的用法了,给自己列个条件清单吧~那以后就可以直接拿来用了

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

>>>>>官方函数说明>>>

WordPress主题开发:WP_Query基本用法的更多相关文章

  1. 黄聪:《跟黄聪学WordPress主题开发》

    又一个作品完成!<跟黄聪学Wordpress主题开发>,国内最好的Wordpress主题模版开发视频教程!! 目录预览: WordPress官方源文件层式结构讲解 WordPress数据库 ...

  2. wordpress 主题开发

    https://yusi123.com/3205.html https://themeshaper.com/2012/10/22/the-themeshaper-wordpress-theme-tut ...

  3. WordPress主题开发:WP_Query常用参数

    常用参数 用途 调用文章或页面 s 查询和某个关键词相关的所有的文章/页面信息 p 文章或页面id post__in 多篇id post__not_in 多篇id以外 post_type 查询的信息类 ...

  4. WordPress 主题开发:从入门到精通(必读)

    本专栏介绍如何开发设计你自己的 WordPress 主题.如果你希望了解更多如何安装和应用主题的内容,请参阅应用主题文档.本文的内容不同于应用主题,因为所讨论的是编写代码去构建你自己的主题的技术内容, ...

  5. WordPress 主题开发 - (三) 开发工具 待翻译

    Before we get started building any WordPress Theme, we’re going to need to get our development tools ...

  6. WordPress 主题开发 - (一) 前言 待翻译

    原文出自: http://themeshaper.com/2012/10/22/the-themeshaper-wordpress-theme-tutorial-2nd-edition/ THE TH ...

  7. [转]WordPress主题开发:主题初始化

    本文转自:http://www.cnblogs.com/tinyphp/p/4391182.html 在最简单的情况下,一个WordPress主题由两个文件构成: index.php -------- ...

  8. WordPress主题开发:style.css主题信息标记

    在最简单的情况下,一个WordPress主题由两个文件构成: index.php ------------------主模版 style.css -------------------主样式表 而且s ...

  9. WordPress主题开发:主题初始化

    在最简单的情况下,一个WordPress主题由两个文件构成: index.php ------------------主模版 style.css  -------------------主样式表(注意 ...

随机推荐

  1. SVN服务器搭建和使用-转载

    SVN服务器搭建和使用(一)-转载 原文地址:http://www.cnblogs.com/xiaobaihome/archive/2012/03/20/2407610.html Subversion ...

  2. Atom组件

    Atom组件 最近用Atom写博客比较多,然后发现一个很严重的问题.. 没有一个我想要的上传图片的方式,比如某乎上边就可以直接copy/paste文件,然后进行上传. 然而在Atom上没有找到类似的插 ...

  3. jQuery项目赋予Router

    给你的jQuery项目赋予Router技能吧   现在你不会React/Vue都不好意思说自己是前端,不过我相信很多前端项目还是基于jquery类库的传统模式的,假如你有追求的态度使用过require ...

  4. 004 作业二(单击弹跳li节点的每个文本节点的值;点击每个 li 节点, 若 li 节点的文本值没有 ^^ 开头, 加上,有,则去除)

    1.需求 点击每个 li 节点, 都弹出其文本值 2.程序 <!DOCTYPE html> <html> <head> <meta charset=" ...

  5. js导出带格式的表格(包括单元格合并,字体样式等)

    function HtmlExportToExcelForEntire() { var uri = 'data:application/vnd.ms-excel;base64,', template ...

  6. 给虚拟机下面的ubuntu系统增加硬盘存储空间

    给虚拟机下面的ubuntu系统增加硬盘存储空间   由于ubuntu系统是安装在vsphere上面的,所以可能会和vmware上面的有一点区别,打开exsi系统的配置页面,如下图所示. 选择添加存储器 ...

  7. 【*】深入理解redis主从复制原理

    1.复制过程 从节点执行 slaveof 命令. 从节点只是保存了 slaveof 命令中主节点的信息,并没有立即发起复制. 从节点内部的定时任务发现有主节点的信息,开始使用 socket 连接主节点 ...

  8. 前端页面重构技巧总结TIP【持续更新...】

    本文均为项目实战经验,要求兼容至IE8,所以以下内容均为兼容代码,欢迎各位小伙伴批评指教.其实重构页面是一门学问,看似简单,却暗藏很多学问.实际项目中页面的重构有以下几点最基本需求: 1.需要使用合理 ...

  9. ElasticSearch 入门总结

    ElasticSearch 入门 本篇为 ElasticSearch 入门学习总结笔记,课程视频地址:ElasticSearch 入门 一.ElasticSearch 简介 1.1.什么是Elasti ...

  10. jqplot导入包小结

    对于jqplot画图的导入包,总结起来就是两种,一种是每个jsp文件都是导入一样的js或css包!这些包可以另新建一个文件存放,有如下这些包! <link rel="styleshee ...