您的问题是,您没有将清理功能作为第三个参数包含在第111行注册\\u设置。如果未提供清理,WordPress将删除选项的值,并基于only 关于传入的内容$_POST
. 由于浏览器根本不会发送未选中的复选框,因此您最终会$options[\'show_admin_dev\']
未设置。
如果不在选项中,应尝试添加可增加值的净化
register_setting(
\'ccms_developer_options\',
\'ccms_developer_options\',
\'ccms_developer_sanit\'
);
function ccms_developer_sanit($newval) {
if (!isset($newval[\'show_admin_dev\']))
$newval[\'show_admin_dev\'] = 0;
return $newval;
}