文档章节

WordPress通过filters更改query_posts()产生的SQL语句

喵先生丿
 喵先生丿
发布于 2017/02/28 11:45
字数 179
阅读 99
收藏 0
点赞 0
评论 0

通过query_posts()filters更改其产生的SQL语句,可以做想针对复杂的查询,如与其他数据库表进行联合查询,更改select选择的字段等等.并且可以享用query_posts()带来的好处,例如分页.

//可用的filters有

posts_join
posts_groupby
posts_orderby
posts_distinct
posts_fields
post_limits
posts_where_paged
posts_join_paged
posts_request

例如增加where查询语句


function posts_where_field ($fields){
    global $wp_query ;
   
    if(!empty($_GET['are'])){
        $fields .= " AND  wp_posts.post_exhibition_are = ".$_GET['are'];
    }

    if(!empty($_GET['city'])){
        $fields .= " AND wp_posts.post_exhibition_city = ".$_GET['city'];
    }
    return $fields;
}

add_filter('posts_where_paged','posts_where_field');

例如增加order查询语句


function posts_orderby_field($fields){
    global $wp_query ;
    if(!empty($_GET['fa'])){
        switch($_GET['fa']){
            case 1:
                $fields = " wp_posts.post_fa_begintime ASC ";
                break;
            case 2:
                $fields = " wp_posts.post_fa_begintime DESC ";
                break;
            case 3:
                $fields = " wp_posts.post_date DESC";
                break;
            case 4:
                $fields = " wp_posts.post_date ASC";
                break;
        }
    }
    return $fields;
}

add_filter('posts_where_paged','posts_where_field');

© 著作权归作者所有

共有 人打赏支持
喵先生丿
粉丝 3
博文 14
码字总数 5275
作品 0
天津
程序员
WordPress代码实现相关文章的几种方法

WordPress很多插件可以实现相关文章的功能,插件的优点是配置简单,但是可能会对网站的速度造成一些小的影响,所以很多人还是比较喜欢用 代码实现需要的功能,但是话又说回来了,代码实现也有...

西西爱OS ⋅ 2012/10/20 ⋅ 0

wordpress调用函数大全

WordPress模板基本文件 style.css 样式表文件 index.php 主页文件 single.php 日志单页文件 page.php 页面文件 archvie.php 分类和日期存档页文件 searchform.php 搜索表单文件 search.php 搜...

老朱教授 ⋅ 2017/10/01 ⋅ 0

划重点!必备 SQL 查询优化技巧,提升网站访问速度

来自:开源中国 协作翻译 链接:oschina.net/translate/sql-query-optimization 原文:https://deliciousbrains.com/sql-query-optimization/ 译者:南宫冰郁, rever4433, soaring, 凉凉_, ......

uzv80px5v412ne ⋅ 01/02 ⋅ 0

wordpress代码调用大全

Wordpress模板基本文件 style.css 样式表文件 index.php 主页文件 single.php 日志单页文件 page.php 页面文件 archvie.php 分类和日期存档页文件 searchform.php 搜索表单文件 search.php 搜...

drewin ⋅ 2013/05/19 ⋅ 1

wordpress代码调用大全

Wordpress模板基本文件 style.css 样式表文件 index.php 主页文件 single.php 日志单页文件 page.php 页面文件 archvie.php 分类和日期存档页文件 searchform.php 搜索表单文件 search.php 搜...

曾沙 ⋅ 2012/12/24 ⋅ 1

使用 WordPress 的 10 个非常有用的 MySQL 查询

大多数使用 WordPress 搭建的网站,其后台都是 MySQL 数据库,经常我们需要定制 WordPress 的功能,这里我们列表 10 个最有用的 WordPress 的数据库查询,你需要一个数据库的管理工具,例如 ...

红薯 ⋅ 2012/08/01 ⋅ 6

通过wpdb访问WordPress数据库

wordpress提供了一个全局变量$wpdb来访问wordpress数据库,通过wpdb可以实现对数据库的各种操作。这里各种操作包括添加 一个新表,查询,删除,更新等等。提供了处理用户自定义数据的接口。注...

李佳顺 ⋅ 2013/01/06 ⋅ 0

WordPress教程:批量修改文章缩略名

最近由于原来的服务器问题,blog空间搬迁,同时数据也不是最新的了.数据库中的文章名称都是中文的.所以,在安装之后,使用wp-slug和colcachehtml两个插件之后,文章显示的链接是中文的.这个比较郁...

西西爱OS ⋅ 2012/10/07 ⋅ 0

cakephp数据库操作find()与query()使用笔记

一:find函数是所有模型都具备的一个获取数据的多功能函数,使用语法为:可以是,,,,或者的其中之一。默认情况下会使用进行查找,即会查出表的第一条符合的数据;本人觉得find("all",条件...

Adam-Lee ⋅ 2011/07/08 ⋅ 0

YII访问数据库(Yii Dao)

CDbConnection: 一个抽象数据库连接 CDbCommand: SQL statement CDbDataReader: 匹配结果集的一行记录 CDbTransaction:数据库事务 访问数据库前需要建立数据库连接;使用DAO建立一个抽象数据...

rooney ⋅ 2014/08/15 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

OSChina 周六乱弹 —— 假如你被熊困到树上

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @小小编辑:推荐歌曲《如果写不出好的和弦就该在洒满阳光的钢琴前一起吃布丁》 《如果写不出好的和弦就该在洒满阳光的钢琴前一起吃布丁》- 谢...

小小编辑 ⋅ 43分钟前 ⋅ 5

vbs 取文件大小 字节

dim namedim fs, s'name = Inputbox("姓名")'msgbox(name)set fs = wscript.createobject("scripting.filesystemobject") 'fs为FSO实例if (fs.folderexists("c:\temp"))......

vga ⋅ 今天 ⋅ 1

高并发之Nginx的限流

首先Nginx的版本号有要求,最低为1.11.5 如果低于这个版本,在Nginx的配置中 upstream web_app { server 到达Ip1:端口 max_conns=10; server 到达Ip2:端口 max_conns=10; } server { listen ...

算法之名 ⋅ 今天 ⋅ 0

Spring | IOC AOP 注解 简单使用

写在前面的话 很久没更新笔记了,有人会抱怨:小冯啊,你是不是在偷懒啊,没有学习了。老哥,真的冤枉:我觉得我自己很菜,还在努力学习呢,正在学习Vue.js做管理系统呢。即便这样,我还是不...

Wenyi_Feng ⋅ 今天 ⋅ 0

博客迁移到 https://www.jianshu.com/u/aa501451a235

博客迁移到 https://www.jianshu.com/u/aa501451a235 本博客不再更新

为为02 ⋅ 今天 ⋅ 0

win10怎么彻底关闭自动更新

win10自带的更新每天都很多,每一次下载都要占用大量网络,而且安装要等得时间也蛮久的。 工具/原料 Win10 方法/步骤 单击左下角开始菜单点击设置图标进入设置界面 在设置窗口中输入“服务”...

阿K1225 ⋅ 今天 ⋅ 0

Elasticsearch 6.3.0 SQL功能使用案例分享

The best elasticsearch highlevel java rest api-----bboss Elasticsearch 6.3.0 官方新推出的SQL检索插件非常不错,本文一个实际案例来介绍其使用方法。 1.代码中的sql检索 @Testpu...

bboss ⋅ 今天 ⋅ 0

informix数据库在linux中的安装以及用java/c/c++访问

一、安装前准备 安装JDK(略) 到IBM官网上下载informix软件:iif.12.10.FC9DE.linux-x86_64.tar放在某个大家都可以访问的目录比如:/mypkg,并解压到该目录下。 我也放到了百度云和天翼云上...

wangxuwei ⋅ 今天 ⋅ 0

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 今天 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部