a-blog cmsをバージョン2系から3系にアップした時は、キャッシュ設定を確認しよう

※当ページのリンクには広告が含まれています

これは a-blog cms Advent Calendar 2022 15日目の記事です。

a-blog cmsは、バージョン3になってからキャッシュ関連の機能が強化され、より高速にページが表示されるようになりました。
それにともない、キャッシュに関する設定箇所も増えています。

今までa-blog cmsをバージョン2を使っていて、それをバージョン3にアップデートした場合、サイトの作り方によっては

  • カテゴリーやブログごとに設定したカスタムフィールドが表示されなくなった
  • エントリーを更新したのに、エントリーサマリーモジュールなどに更新内容が反映されない

といったことが起こる場合があります。

その際に、どの設定をチェックしていけば良いかについて紹介していきますね。

カテゴリーやブログごとに設定したカスタムフィールドが表示されなくなった場合

バージョン2の時には表示されていたのに、バージョン3にアップすると、カテゴリーやブログごとに作っていたカスタムフィールドが表示されなくなることがあります。
これは、「テンプレートキャッシュ」の設定が有効になっているためです。

「テンプレートキャッシュ」とは?

a-blog cmsの「テンプレートキャッシュ」が有効になっている時は、テンプレートを更新しても反映されません。
テンプレートの変更を反映させるには、

  • デバッグモードにする
  • 本番環境での運用時には、ダッシュボードでテンプレートキャッシュをクリアする

の方法があります。


管理画面>ダッシュボード


テンプレートキャッシュ有効時に、カスタムフィールドが表示されない理由

テンプレートキャッシュを有効にしている場合は、ファイルのインクルードの記述方法に一部制限がかかります。

@include("/admin/entry/bcd/%{BCD}.html")

のように、グローバル変数を使ってファイルをインクルードする時に、使えるグローバル変数が少なくなります。
使用できるグローバル変数は、以下になります。

%{ECD}
%{BCD}
%{PBCD}
%{RBCD}
%{CCD}
%{PCCD}
%{RCCD}
%{ALIAS_CODE}
%{IS_ADMIN}
%{MODULE_NAME}
%{MODULE_ID}
%{ADMIN_PATH}
%{ADMIN_PATH_MID}

引用元:https://developer.a-blogcms.jp/document/cache/#entry-id-3709

例えば、ブログやカテゴリーごとの独自のカスタムフィールドを使っている場合、
%{BID}
%{CID}
などを使ってインクルードすることもあるかもしれません。
しかし、テンプレートキャッシュ有効時には、これらのグローバル変数は使えないので、設定を変更する必要があります。

解決方法は、

  1. 使用可能なグローバル変数を使う
  2. テンプレートキャッシュを無効にする

の2通りです。
もちろん、せっかくのキャッシュ機能を活かすのであれば、1番目の「使用可能なグローバル変数を使う」方が良いのですが、構成が変えられない場合などは、テンプレートキャッシュを無効にできます。

テンプレートキャッシュを無効にする方法

テンプレートキャッシュを無効にするには、「private/config.system.yaml」ファイルに

template_cache: off

と記載します。
これで、テンプレートキャッシュが無効になります。

エントリーを更新したのに、エントリーサマリーモジュールなどに更新内容が反映されない

バージョン3にアップ後、エントリーを更新すると、エントリーの詳細画面(Entry_Bodyモジュール)は更新が反映されるのに、エントリーサマリーモジュール等を使ったエントリー一覧ページが更新されない、といった場合があります。
その場合は、

コンフィグ>キャッシュ設定

で設定を確認します。


コンフィグ>キャッシュ設定


上の画像のように、「ページキャッシュ」が有効になっていると、キャッシュが効いてエントリーを更新しても該当エントリー以外のモジュールには更新が反映されないので、「POST時のキャッシュクリア」にチェックを入れる必要があります。

今回のまとめ

a-blog cmsをバージョン2から3にアップした際の、キャッシュ関連の注意点について、以下の2点ご紹介しました。

  • カテゴリーやブログごとに設定したカスタムフィールドが表示されなくなった
  • エントリーを更新したのに、エントリーサマリーモジュールなどに更新内容が反映されない

もし、自社やクライアントのサイトで同じ現象が起こった時に、チェックしてみてくださいね。


関連記事

この記事のハッシュタグに関連する記事が見つかりませんでした。

ウェブ解析士マスター /上級SNSマネージャー/ a-blog cmsエバンジェリスト

香川県生まれ。1998年からウェブ制作に取り組む。制作会社にて企業・ECサイトのデザイン、ディレクション、CMS構築等を担当後、2015年7月に独立。

デジタルマーケティング・ウェブコンサルティング、UI、UX設計を主軸に戦略から考えるウェブサイト設計・構築を行う。

趣味は和太鼓演奏。香川県三豊市で活動する「和太鼓集団 響屋」メンバー。実家の桃農家も手伝う兼業農家。

最新記事

カテゴリー

アーカイブ

ハッシュタグ

【初心者向けから応用まで】
GA4を学ぶならこの本がオススメ