WordPressで記事投稿orコメント投稿時にNginxのキャッシュを削除するプラグイン

どんぴしゃなプラグインがあったんですが、、
WordPress › Nginx Cache Controller « WordPress Plugins

PCから投稿したらPC用のキャッシュ、スマホから投稿したらスマホ用のキャッシュだけ削除されるぽい。
そもそも完全なレスポンシブなデザインだったら、問題ないんですが、使ってるテンプレートは部分的にPHP側でUA判定して表示される箇所があって、現状キャッシュを分けてます。

で、その解決方法もどんぴしゃりなエントリーを見つけました。
網元で Ktai Style とか使う時の注意点 | dogmap.jp

proxy_cache_keyが微妙に違うので、少し変更したけど、ほぼそのまま。

add_filter('nginxchampuru_get_cache', 'nginxchampuru_get_cache', 10, 2);
function nginxchampuru_get_cache($key, $url = null) {
    global $nginxchampuru;
    if (!$url) {
        $url = $nginxchampuru->get_the_url();
    }
    $keys = array(
        $key,
        $nginxchampuru->get_cache_key($url.'@ktai'),
        $nginxchampuru->get_cache_key($url.'@mobile'),
    );
    if ($key !== $nginxchampuru->get_cache_key($url)) {
        $keys[] = $nginxchampuru->get_cache_key($url);
    }
    return $nginxchampuru->get_cache_file($keys);
}

(当ブログの設定では、@ktai:ガラケー、@mobile:スマホって感じでやってます。)

流石にWordPressは使ってるユーザーが多いだけあって、ぐぐれば大体解決しますねw

返信を残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください