Wordpress管理页面:wpdb-> query()不保留重定向

时间:2017-03-07 16:10:07

标签: php html wordpress

我有一个插件可以在_transients中保留HTML代码段。现在,我希望能够让用户通过单击按钮删除所有相关的瞬变。我已经设法创建一个按钮,向options.php页面发送正确的请求,获取请求,并执行查询,但问题是我留在/options.php,我想重定向到我的插件页面。以下是代码的相关部分:

function fbClearTransients(){
    global $wpdb, $_wp_using_ext_object_cache;

    if(!empty($_POST["fb-clear-transient"]) && intval($_POST["fb-clear-transient"]) == 1) {
        $sql = "DELETE FROM $wpdb->options WHERE option_name LIKE '%_transient_fb_%'";
        $clean = $wpdb -> query( $sql );
    }
}

function fbClearCache() {
    $clear = fbClearTransients();
}

add_action('admin-init', 'fbClearCache');

[...]

<form action="options.php" method="post">
        <input type="hidden" name="fb-clear-transient" value='1'>
        <?php submit_button( __('Clear cache'), 'secondary', 'fb_clear_trans_button', false ); ?>
</form>

所以,总结一下:查询有效,一切正常,除了我没有重定向回我的插件页面,就像初始保存按钮一样 - 保存设置的那个。

1 个答案:

答案 0 :(得分:0)

鉴于我已经修改了原始查询,这会将我带到admin.php?page = myplugin,我需要以某种方式告诉系统我想要在那里结束,所以简单地添加:

header('Location: admin.php?page=my-plugin');

为我修好了。

相关问题