二氮嗪oxide / wp-lib-option
WordPress选项
1.0.2
2020-09-04 08:46 UTC
Requires
- php: >=7.2
- ext-json: *
- ext-mbstring: *
- diazoxide/php-helpers: dev-master
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-10 20:55:35 UTC
README
创建具有灵活配置的动态管理设置页面。
方法
- 单一
- 多个
类型
- 布尔值
- 文本
- 对象
- 组
标记
- 文本
- 复选框
- 选择
- 数字
- 文本区域
如何安装
使用composer安装
在您的自定义插件目录中运行以下composer命令
composer require diazoxide/wp-lib-option:dev-master
或添加到您的composer.json
的require字段
{ "require": { "diazoxide/wp-lib-option": "dev-master" } }
如何使用
例如,我们有一个多维数组$config
,它有一个静态值name
,两个动态值country
和other->is_solder
。
country
字段应由用户从管理端设置
use diazoxide\wp\lib\option\v2\Option; $config = [ 'name'=>'Arthur', 'country' => new Option( [ 'default' => 'uk', 'type' => Option::TYPE_TEXT, 'method' => Option::METHOD_SINGLE, 'values' => [ 'fr'=>"France", 'uk'=>"United Kingdom", 'it'=>"Italy" ], 'label' => 'Country', 'description' => 'Select country.' ] ), 'other'=>[ 'is_solder'=>new Option( [ 'default' => false, 'type' => Option::TYPE_BOOL, 'label' => 'Solder or not' ] ) ] ];
打印此配置表单
Option::printForm( 'custom_index_key_for_config', $config, [ 'title' => 'Arthur Configuration' ] );
如果从打印的表单更改值并点击保存,那么所有更改都将存储在带有自定义前缀custom_index_key_for_config
的wp_options
表中。
获取此选项的最终值
$options = Option::expandOptions( $config, 'custom_index_key_for_config' );
因此,我们已扩展了具有动态和静态值的选项。您可以直接使用它。
例如
echo $options['name']; // Output: Arthur echo $options['country']; // Output is dynamic. Default value is `fr` var_dump($options['other']['is_solder']); // Output is dynamic. Default value is `false`