方法介绍
使用update_option()
方法更新一对配置属性值到数据库。$option
的值需要在插入到数据库之前用$wpdb->prepare
方法来进行转义。这个值必须正确的处理。
这个方法可以用来代替add_option
,尽管它确实没那么灵活。update_option
会去检查这个配置属性是否存在。如果不存在,会使用add_option('option_name','option_value')
来进行添加。除非你想用add_option
来配置一些特殊参数,不然就用update_option
则是个双全的添加与更新的好选择。
用法
<?php update_option( $option, $new_value, $autoload ); ?>
参数
$option
(string
) (required
) 要更新的属性值。不得超过64个字符。有一系列的默认配置属性可以在这看到Option Reference
默认: None
$newvalue
(mixed
) (required
) 要更新的新值。这个值可以是integer
、string
、array
、object
。
默认: None
$autoload
(mixed
) (optional
) 是否允许Wordpress启动的时候去加载这个属性。对于已经存在的配置属性,这个参数只能通过update_option()
方法来更新。设置为true
来开启这个功能,false
来关闭这个功能。而对于不存在的配置属性,默认是yes
。
默认: null
返回值
(boolean
)
返回true
表示更新成功,false
表示更新失败。
例子
更新核心配置属性
设置默认评论状态为closed
update_option( 'default_comment_status', 'closed' );
这个属性通常在设置>评论管理节目来设置。查看Option Reference来看全部核心配置属性。
更新自定义配置属性
同样也可以创建自己的自定义配置属性。比如我们要更新myhack_extraction_length
属性为255
,那就这么设置:
update_option( 'myhack_extraction_length', 255 );
这样会在属性不存在的情况下新增这个配置属性。然而,如果你不想这个属性自动加载,那就必须使用add_option()
来操作。这个例子呢,我们会在它存在的时候就更新,不存在呢,就用add_option()
来进行,并设置$autoload
参数设置为no
。
<?php
$option_name = 'myhack_extraction_length' ;
$new_value = '255' ;
if ( get_option( $option_name ) !== false ) {
// The option already exists, so we just update it.
update_option( $option_name, $new_value );
} else {
// The option hasn't been added yet. We'll add it with $autoload set to 'no'.
$deprecated = null;
$autoload = 'no';
add_option( $option_name, $new_value, $deprecated, $autoload );
}
?>
源文件
update_option()
源文件 wp-includes/option.php.