【发布时间】:2013-07-09 16:15:28
【问题描述】:
我的管理页面中有一个复选框,代码如下所示(此代码有效,我可以关闭和打开我的复选框并能够保存更改)
add_settings_field(
'my_checkbox_default',
'Checkbox:',
'my_default_checkbox_settings_function',
'override_theme_display_options',
'override_theme_display_options'
);
function my_default_checkbox_settings_function(){
$options = get_option('override_theme_display_options');
if(isset($options['my_checkbox_default'])) {
$checked = 'checked';
} else {
$checked = '';
}
update_option('my_checkbox_default', $checked);
echo "<input type='checkbox' name='override_theme_display_options[my_checkbox_default']' ".$checked." id='my_checkbox_default' />";
}
现在我想将默认状态 "checked" 添加到我的复选框中。
所以我的复选框设置功能是这样的:
function my_default_checkbox_settings_function(){
$options = get_option('override_theme_display_options');
//Added default state "checked" to my check box
add_option('my_checkbox_default',$checked = 'checked');
if(isset($options['my_checkbox_default'])) {
$checked = 'checked';
} else {
$checked = '';
}
update_option('my_checkbox_default', $checked);
echo "<input type='checkbox' name='override_theme_display_options[my_checkbox_default']' ".$checked." id='my_checkbox_default' />";
}
我的复选框现在默认状态为 "checked",但现在我无法切换我的复选框 off 和 on 不再(无论我做什么,它都会一直保持“选中”状态),如果我注释掉我的add_option(),我的默认“选中”状态将不会被设置,但我将能够切换和再次保存我的复选框状态。
如何在默认情况下添加“选中”状态并且仍然能够切换和保存复选框的选项?
我很乐意为解决这个问题增加 50 赏金。 THX!
【问题讨论】:
标签: php wordpress settings isset