2017-03-07 71 views
0

我有一個插件,將HTML片段保存在_transients中。現在,我希望能夠讓用戶通過單擊按鈕來刪除所有相關的瞬變。我已經設法創建一個按鈕,發送適當的請求到options.php頁面,獲取請求,並執行查詢,但問題是,我留在/options.php,我想重定向到我的插件頁面。下面是代碼的相關部分:WordPress的管理頁面:wpdb->查詢()不會保持重定向

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> 

所以,總結一下:查詢工作,一切正常,只是我不是重定向回我的插件頁,與最初保存按鈕 - 這節省了一個設置。

回答

0

既然我已經修改了會一直帶我去admin.php的原始查詢頁面=爲myplugin,我需要以某種方式告訴我想在那裏結束系統,因此增加乾脆:?

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

給我修好了。