add_option 添加设置选项

Posted in:
Update time:2020-10-27

函数描述

添加“选项/值”对到WordPress选项数据表中的安全方法,如果选项已存在,此函数将不会做任何操作。选项添加后,可以通过get_option()函数获取选项值,通过update_opthion()更新值,通过delete_option()删除值。

我们不需要序列化选项值,如果选项值需要序列化,该函数在插入之前会帮我们序列化。我们可以创建一个没有值的选项,然后再添加选项值。

在添加选项前,该函数会首先调用 add_option 检查该选项是否已被添加,如果该选项已存在,函数将返回flase,然后该函数将检查选项名称是否为被保护的名称,如果在alloptions maybe notoptions 被保护的名称,函数将停止执行被返回错误信息。如果选项名称在数据表中不存在,并且没有被保护,这个选项将被添加到数据库中。

注意: add_option 使用 get_option 确定选项名称是否已经存在,,因为 get_option 默认返回 false, 如果在数据库中设置了一个选项的值为 false  (如:update_option($option_name, false)), 然后调用 add_option 将改变这个值,因为对于 add_option 函数来说,这个选项看起来是不存在的。

Usage

<?php add_option( $option, $value, $deprecated, $autoload ); ?>

parameters

parametersdata typeRequired or notdescriptivedefault value
$optionstring (computer science)be需要获取的选项名称,下划线分隔,只能使用小写字母
$value任意clogged如果没有从获取到值时,使用此参数作为默认值
$deprecatedstring (computer science)clogged在WordPress 3.2中已弃用 默认: empty string
$autoloadstring (computer science)clogged是否可以被 wp_load_alloptions() 自动加载(在每个页面加载时把所有选项放在一个对象缓存中)yes|no

return value

布尔值,如果添加成功,返回 True,添加失败返回 False

usage example

<?php add_option( 'myhack_extraction_length', '255', '', 'yes' ); ?>

和 update_option() 比较

如果你想确认指定选项是否已经添加,使用 update_option(),该函数将绕过选项名称检查直接更新选项来判断期望的值是否存在。

注意:如果你使用 update_option() 添加选项,你将不能指定 autoload=’no’。如果你需要指定 autoload=’no’,而你不能确定选项是否已存在, 在调用add_option()之前,先调用delete_option()删除选项。

We offer WordPress Themes and Plugins Custom Development Services

This site has long undertaken WordPress themes, plugins, WooCommerce-based store mall development business. We have 10 years of experience in WordPress development, if you want to Developing Websites with WordPress, please contact WeChat: iwillhappy1314 or email: amos@wpcio.com for inquiries.