Wordpress-自定义wp_选项条目
我想要什么 对于我正在开发的主题,我尝试使用数据库中的wp_options表 我在wp admin中有一个自定义选项页面,其中有4个条目,其中有两个选项,如下所示:Wordpress-自定义wp_选项条目,wordpress,Wordpress,我想要什么 对于我正在开发的主题,我尝试使用数据库中的wp_options表 我在wp admin中有一个自定义选项页面,其中有4个条目,其中有两个选项,如下所示: Options Option 1 Text: Option 1 Value: Option 2 Text: Option 2 Value: etc. add_option('option-1-text', ''); add_option('option-1-value', ''); update_option('optio
Options
Option 1 Text:
Option 1 Value:
Option 2 Text:
Option 2 Value:
etc.
add_option('option-1-text', '');
add_option('option-1-value', '');
update_option('option-1-text', $option1text);
update_option('option-1-value', $option1value);
add_action( 'customize_register', function( $wp_customize ) {
$wp_customize->add_section( 'my_section' , array( 'title' => 'MY Custom Section' ) );
$wp_customize->add_setting( 'my_setting' , array( 'default' => false ) );
$wp_customize->add_control( 'my_setting', array(
'label' => 'My Custom Setting',
'section' => 'my_section',
'settings' => 'my_setting',
'type' => 'checkbox'
));
});
现在我想将这些设置写入数据库
我拥有的
为了编写此代码,我使用以下Wordpress代码片段:
首先,我在我的functions.php中添加如下选项:
Options
Option 1 Text:
Option 1 Value:
Option 2 Text:
Option 2 Value:
etc.
add_option('option-1-text', '');
add_option('option-1-value', '');
update_option('option-1-text', $option1text);
update_option('option-1-value', $option1value);
add_action( 'customize_register', function( $wp_customize ) {
$wp_customize->add_section( 'my_section' , array( 'title' => 'MY Custom Section' ) );
$wp_customize->add_setting( 'my_setting' , array( 'default' => false ) );
$wp_customize->add_control( 'my_setting', array(
'label' => 'My Custom Setting',
'section' => 'my_section',
'settings' => 'my_setting',
'type' => 'checkbox'
));
});
然后,我在保存页面时更新这些选项,如下所示:
Options
Option 1 Text:
Option 1 Value:
Option 2 Text:
Option 2 Value:
etc.
add_option('option-1-text', '');
add_option('option-1-value', '');
update_option('option-1-text', $option1text);
update_option('option-1-value', $option1value);
add_action( 'customize_register', function( $wp_customize ) {
$wp_customize->add_section( 'my_section' , array( 'title' => 'MY Custom Section' ) );
$wp_customize->add_setting( 'my_setting' , array( 'default' => false ) );
$wp_customize->add_control( 'my_setting', array(
'label' => 'My Custom Setting',
'section' => 'my_section',
'settings' => 'my_setting',
'type' => 'checkbox'
));
});
问题
它起作用了。但我不认为这是Wordpress的最佳实践。对于这8个设置,我不想在数据库中创建自己的表
有人能帮我吗?选项API就是为此而设计的,因此它的使用是使用插件或主题选项的正确方法。还有一个主题自定义API,允许开发人员自定义主题的设置(并实时查看这些更改的预览),它还可以用于创建和使用各种自定义主题选项 例如,创建新节和添加复选框设置控件可以按如下方式完成:
Options
Option 1 Text:
Option 1 Value:
Option 2 Text:
Option 2 Value:
etc.
add_option('option-1-text', '');
add_option('option-1-value', '');
update_option('option-1-text', $option1text);
update_option('option-1-value', $option1value);
add_action( 'customize_register', function( $wp_customize ) {
$wp_customize->add_section( 'my_section' , array( 'title' => 'MY Custom Section' ) );
$wp_customize->add_setting( 'my_setting' , array( 'default' => false ) );
$wp_customize->add_control( 'my_setting', array(
'label' => 'My Custom Setting',
'section' => 'my_section',
'settings' => 'my_setting',
'type' => 'checkbox'
));
});
要获取设置值,请使用get\u theme\u mod()
函数
get_theme_mod( 'my_setting' )
就我个人而言,当我使用主题的选项时,我觉得使用主题API比使用设置和选项API更舒服,因为它更容易获得相同的效果
以下是一些有用的链接:
您应该摆脱
添加选项()update_option()
将在该选项不存在时添加该选项。