Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

[baserCMS] ビューキャッシュがクリアされるタイミング

More than 5 years have passed since last update.

baserCMSには、キャッシュを利用する仕組みの内のひとつにビューキャッシュがあります。
ビューキャッシュとは、フロントの表示内容をマルッと一時ファイルとして生成しておき、そのキャッシュファイルの有効時間内では表示する際に再利用され、プログラムの内部処理を省略し、表示を早めることのできる仕組みです。
※管理システムにログイン中は、このキャッシュは利用されません。

では、そのキャッシュファイルはいつクリアされるのか?という点が気になって調べてみました。

想定している対象者

  • baserCMSでウェブサイトを制作をしている方

ビューキャッシュの基本動作

ビューキャッシュの有効期限は 5分 で設定される。
デバッグモードが有効な場合は 10秒 で設定される。

app/Config/core.php
$duration = '+5 min';
if (Configure::read('debug') > 0) {
    $duration = '+10 seconds';
}

ビューキャッシュが削除されるタイミング一覧

  • 固定ページ追加時、ステータス、公開期間共に公開状態にあるとき
  • 固定ページ編集保存時、タイトル、URL、公開状態が更新された場合は全てのビューキャッシュを削除
    • 上記以外のときは編集保存時ページのビューキャッシュのみ削除
  • 固定ページテンプレートの書出を行ったタイミング
  • 固定ページの並び替えを行ったタイミング
  • 固定ページの公開状態を変更したタイミングでは、切替えたページのビューキャッシュのみ削除
  • 固定ページ削除時は、削除したページのビューキャッシュのみ削除

  • ブログ記事の編集保存時

  • ブログ記事の追加保存時

  • ブログ記事の削除時

  • ブログ記事の公開状態を切替えたタイミング(一括指定含む)

  • ブログコメントの公開状態を切替えたタイミング(一括指定含む)

  • サイト設定を保存したタイミング

  • ウィジェットを更新したタイミング

  • ウィジェットを並び替えたタイミング

  • ウィジェットを削除したタイミング

ビューキャッシュの削除方法

clearViewCache を実行すると削除できます。

/lib/Baser/basics.php
clearViewCache();
materializing
Cakeをもぐもぐ。。。 https://github.com/materializing
http://www.materializing.net/
e-catchup
国産オープンソース baserCMS を世に送り出したWeb技術のプロフェッショナル集団です。
https://catchup.co.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away