WordPress 的数据库源代码采用的是 ezSQL 数据库类,其对数据库的操控性可谓是手到擒来,并且子凡早期也曾在泪雪博客给大家推荐过 ezSQL 数据库类,自己做一些开发时也有用到,那么最近在折腾泪雪网的用户中心,某些功能确实需要深度的二次开发,故此 WordPress 的全局数据库$wpdb 变量就是重点了。

WordPress wpdb

该$wpdb 对象不限于 WordPress 创建的默认表; 它可用于从 WordPress 数据库中的任何表中读取数据,所以深度二次开发时自定义创建的数据表也可以轻松操作。可以与任意数量的表进行通信,但一次只能与一个数据库通信, 默认情况下是 WordPress 数据库。

介绍的话就不多说了,还是来说说使用吧!如果你是在 WordPress 的主题或者插件文件中想要使用 wpdb 函数,直接声明该全局变量即可使用,如果你是在根目录或者非 WordPress 环境下,也想要调用 WordPress 的核心数据库操作功能,那么如下你需要调用 WordPress 的根目录的 wp-blog-header.php 配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//根据自己实际情况设定调用目录
require_once(./wp-blog-header.php’);  
global $wpdb;
 
// wpdb 插入数据
$wpdb->insert( $wpdb->prefix . 'fanly', array( 'name' => 'Fanly', 'url' => 'zhangzifan.com' ) );
 
// wpdb 删除数据
$wpdb->query( "DELETE FROM " . $wpdb->prefix . "fanly WHERE 'url' = 'zhangzifan.com'" );
 
// wpdb 修改数据
$wpdb->update( $wpdb->prefix . 'fanly', array( 'name' => 'Fanly', 'url' => 'zhangzifan.com' ), array( 'name' => '子凡' ) );
 
//wpdb 获取数据
$data = $wpdb->get_row( "SELECT * FROM ".$wpdb->prefix."fanly WHERE 'url'='zhangzifan.com'" );
echo $data->name;

其它的就列举了,子凡这里就是简单的列举了增删改查较为常用的四个示例,详细的可以去 WordPress 官方了解,当然你也可以直接了解 ezsql 的用法,详细你会爱上这个使用方法的。

最后子凡还是忍不住提醒大家一句,在对 WordPress 做开发时,建议还是应该优先选用 WordPress 已经提供封装好的函数,尽可能的减少或者不适用数据库直接操作的方式来操作数据库数据。

发表评论
登录后参与评论
专注 WordPress 网站优化解决方案! 加入我们