添加一个按钮以重置WordPress主题选项

时间:2016-02-21 05:20:10

标签: php wordpress wordpress-plugin wordpress-theming

我为WordPress主题创建了一个主题选项页面,我需要添加重置按钮来清除主题选项的所有用户定义设置。

我被告知这个功能可以完成这项任务,

function reset_mytheme_options() { 
    remove_theme_mods();
}
add_action( 'after_switch_theme', 'reset_mytheme_options' );

但是,不知道如何在按钮点击上运行此功能。

那么,这个功能会做我需要的吗?如果是这样,如何在点击按钮上运行它?

1 个答案:

答案 0 :(得分:0)

如您所说,您正在使用设置API,那么您可以通过这种方式实现。

  1. 在提交按钮后在主题选项页面中添加按钮。

    submit_button(__('Reset'), 'secondary', 'reset', false);

  2. 注册设置时,请通过验证回调

    register_setting('option_group', 'options_name', 'save_theme_option');

  3. 当表单由reset按钮提交时,请检查重置请求并返回默认设置。

  4. 实施例

    function save_theme_option($input) {
        if (isset($_POST['reset'])) {
            add_settings_error('settingName', 'SettingSlug', __('Your settings has been changed defualt setting.', 'text-domain'), 'updated');
            return array('a' => 1, 'b' => 2); //Default settings
        }
    
        return $input;
    }