深入理解 WordPress 设置选项数据表 wp_options

文 / @WordPress主题

关于WordPress数据表中的wp_options

本人小本本,今天给大家介绍一下 WordPress 数据库中的一块比较特殊的数据表:wp_options。它相比其他数据表完全独立,不与其他数据表有任何关系。

WordPress数据表结构
WordPress数据表结构(点击查看大图)

在 WordPress 数据库中,wp_options 数据表保存的是网站设置数据,而不是网站的内容。这些数据可以使用 OptionsAPI 或 SettingsAPI 来存取,我们可以添加数据到现有的选项中,也可以根据需要添加新选项。

接下来,我将为大家介绍以下几个方面的内容:

  • 如何访问wp_options数据表中的数据
  • wp_options数据表的结构
  • wp_options数据表中的数据来源
  • WordPress OptionsAPI
  • WordPress SettingsAPI

如何访问wp_options数据表中的数据

wp_options 数据表中保存的是网站的设置数据,管理着整个网站的设置,对这个数据表的访问必须受到限制,拥有 manage_options 权限的用户才能修改这个数据表中的数据。默认具有这个权限的角色是管理员角色(在多站点模式中,这个角色为网络管理员)。

也就是说,如果你需要让其他角色的用户访问这个数据表,你必须分配 manage_options 权限给他们。这是一个比较危险的操作,只有你知道自己在做什么的时候,才进行这个操作!

wp_options数据表的结构

wp_options 数据表和 metadata 数据表结构类似,有4个字段:

  • option_ID–自增ID
  • option_name–设置选项的键
  • option_value–设置选项的值
  • autoload–指定该选项是否在页面加载的时候自动加载,在单站点中默认为 yes ,多站点模式下默认为 no 。

option_name 在数据表中是唯一的,如果添加了多个值,WordPress 将把这些值以数组的形式保存在 option_value字段中, active_plugins 选项就是一个很好的例子,这个选项中保存着当前激活的插件。

添加、编辑或删除 wp_options数据表的数据时,必须指定 option_name字段,这个在下面会详细介绍。

wp_options数据表中的数据来源

wp_options 数据表中的数据主要通过以下三种来源添加。

  • WordPress 默认设置选项
  • 主题设置选项
  • 通过插件添加的设置选项

为了方便存取 wp_options 数据表中的数据,WordPress 为我们提供了一些很方便的 API。当然,我们也可以创建自己的功能函数来存取该表中的数据。要想创建新的设置选项,我们可以使用 OptionsAPI 或 SettingsAPI。

使用WordPress OptionsAPI

OptionsAPI 有8个功能,这些功能允许我们添加、获取、更新或删除设置选项。

函数 参数 备注
add_option() $option,
$value,
$deprecated,
$autoload
只有$option 是必需参数,如果数据表的 option_name 字段是 $option,WordPress将添加 $value 值作为数组添加到 option_value字段,如果没有匹配的字段,将添加新记录。
delete_option() $

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。