2017-03-07 5 views
0

_transientsにHTMLスニペットを保持するプラグインがあります。今、ボタンをクリックすることで、ユーザーに関連するすべてのトランジェントを削除させたいと思っています。私はボタンを作成し、options.phpページに適切なリクエストを送信し、リクエストを取得し、クエリを実行することができましたが、問題は私が/options.phpに残っていて、私のプラグインページにリダイレクトしたいということです。ここでは、コードの関連部分です:Wordpressの管理ページ:wpdb-> query()はリダイレクトを維持しません

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

は、私がadmin.phpに私を取るただろう、元のクエリを変更したことを考えるページ= myplugin、私は何とかそう簡単に追加して、私はそこに終わるしたいシステムに伝えるために必要な:?

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

私のためにそれを修正しました。

関連する問題