エントリー系モジュールの初期スコープ

エントリー系モジュールの初期スコープ

モジュールIDを設定していない状態のモジュールの場合、表示内容にURLコンテキストを反映するかどうかは、固有の初期スコープによって決定されます。

そのためモジュールによっては、モジュールIDを設定しないとURLコンテキスト上のpageが反映されなかったり、下階層のブログの情報を表示しなかったりします。

下記の表を参考に、モジュール毎の初期設定をご確認ください。

URLコンテキストの反映に関する初期設定

  • ○ = 反映する
  • × = 反映しない


名称 Body List Headline Photo Summary ArchiveList GeoList
bid × × × × ×
uid × × × × ×
cid × × × × ×
eid × × × ×
keyword × × × × ×
tag × × × × ×
field × × × × ×
start × × × × ×
end × × × × ×
page × × × × ×

階層構造の追跡に関する初期設定



モジュール名 Body List Headline Photo Summary ArchiveList GeoList
ブログ階層 自分+自分以下 自分のみ 自分のみ 自分のみ 自分のみ 自分のみ 自分のみ
カテゴリー階層 自分+自分以下 自分のみ 自分のみ 自分のみ 自分のみ 自分のみ 自分のみ

Ver. 2.11.37 リリースのお知らせ


この記事では、2021年5月17日にリリースした Ver.2.11.37 の改善・修正内容について紹介いたします。

現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。

Ver. 2.11.37のリリースノート

  • CMS-5651 静的なindex.html がindex.htmlをつけない、スラッシュで終わるURLでテンプレートとして認識しない問題を修正
  • CMS-5653 Safariでメディアのファイルダウンロードに失敗する場合がある問題を修正
  • CMS-5652 パスワード保護付きのPDFがメディアにアップロードできない問題を修正
  • CMS-5650 下書き、非公開、承認中などのステータスが出る校正オプションを追加 例: {eid}[entryStatusLabel]

CMS-5651 静的な index.html が index.html をつけない、スラッシュで終わるURLでテンプレートとして認識しない問題を修正

従来の動作ではディレクトリ内に静的なHTMLをindex.htmlというファイル名で設置するとURLが「/」が末尾についた状態でページが表示されていましたが、この機能が正常に動作していない問題が確認されました。
たとえば、通常であればhttps://example.com/contact/のURLにアクセスすると/contact/index.htmlのテンプレートが表示されますが、今回の問題が発生した場合は404のテンプレートが表示されます。

この問題はconfig.system.yaml で指定できる forbid_tpl_inheritance_when_path_unresolved が有効になっている場合に発生します。

この問題が発生している確率が高い条件

  • Ver. 2.11.25以降に新規インストールしたもの(新規インストールしていると設定がデフォルトが有効になっています)
  • 静的サイトや一部静的サイトの箇所があるもの

旧バージョンからアップデートした場合や、すべて動的サイトであければ問題になりません。

解決策

forbid_tpl_inheritance_when_path_unresolvedの設定を無効にする、もしくは Ver.2.11.37 以降のバージョンへアップデートする

CMS-5650 下書き、非公開、承認中などのステータスが出る校正オプションを追加 例: {eid}[entryStatusLabel]

下書き、非公開、承認中などのエントリーのステータスを出力する校正オプションを追加しました。eidをキーにして表示できるため、eidを表示する変数に適用可能です。

使用例

 {eid}[entryStatusLabel]

例えば、多言語サイトなどの実装をした際にはタイトルをカスタムフィールドで表示するため従来の動作では実現できませんでしたが、ステータスを表示できるようになります。

最後に

この度はご迷惑をおかけしてしまい申し訳ございませんでした。該当する問題がありましたら、お早めにバージョンアップのご検討をお願いいたします。 また、迅速にご報告いただいたユーザーの皆さま、誠にありがとうございました。

今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいりますので、引き続き気づいた点がありましたらフィードバックいただけると幸いです。

ブラウザのキャッシュ管理

クライアントのキャッシュ有効時間



サイトを閲覧している方の端末のブラウザのキャッシュの有効時間を設定します。この時間はブラウザ側のキャッシュが利用され、サーバーにはアクセスされません。

逆に言えば、ページが更新された場合に反映されないことがあります。ブラウザの再読み込みボタンを押したり、ブラウザの管理画面からキャッシュを削除しなければ変更後のページに切り替わらない可能性があります。

クライアントのキャッシュ有効時間は、管理画面では コンフィグ>機能設定のページにあります、「クライアントのキャッシュ有効時間」という項目にあたります。秒単位で入力してください。

キャッシュバスティング



キャッシュが原因でJavaScriptやCSSが本番環境で変更したはずの内容が反映されないという問題が起こることがあります。この問題を解決するのがご紹介しているキャッシュバスティングという機能になります。キャッシュバスティングが適用される対象は、外部ファイルで読み込んでいるJavaScriptとCSSファイルの2つです。

キャッシュバスティングは管理画面では コンフィグ>出力設定のページにあります、「ブラウザキャッシュ」という項目になります。設定項目は3種類用意されています。



設定項目 出力例
ファイルのタイムスタンプ ?date=20170420181854
ファイルのタイムスタンプのハッシュ ?v=a57c90cc81882fffb468818eb98a8cdd
クエリをつけない なし

デフォルトでは「ファイルのタイムスタンプ」が適用されています。もし従来のままで運用したいということがあれば、「クエリをつけない」を選択してください。

適用例:

<link rel="stylesheet" href="/themes/system/css/acms-admin.min.css?date=20170420181854">