PowerCMS™
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[ブログ] 人事・教育担当より アルファサードのメンバーに求めていること を追加しました。
[ブログ] PowerCMS サポートの実績 (2024年2月) を追加しました。
[よくあるご質問] スケジュールタスクが実行されているか確認する方法はありますか? を追加しました。

PowerCMS ブログ

ホーム > PowerCMS ブログ > PowerCMS 5 > 「手動」のテンプレートはどういう時に使うのか?

2019年10月25日

「手動」のテンプレートはどういう時に使うのか?

テンプレートの「公開」プロファイルに、「手動」という設定値が存在します。
このプロファイルを選択した時の動作と、どのようなテンプレートに「手動」プロファイルを設定するのかを説明します。

「公開」プロファイルはどこで設定できるか

テンプレートに設定するものです。管理画面上では「デザイン」>「テンプレート」で一覧表示される「インデックステンプレート」と「アーカイブテンプレート」の各テンプレート内で設定が可能です。一覧上では「公開」として表示されています。
なおこの一覧画面では、対象にチェックを入れて「アクション」プルダウンから「手動にする」を選択し、「Go」ボタンをクリックすることで、一括で「手動」へと変更することが可能です。

一覧からテンプレート名のリンクを開くことでテンプレート編集画面に移動します。
設定が表示される場所は「インデックステンプレート」の場合と「アーカイブテンプレート」の場合で異なります。
「インデックステンプレート」の場合はクリックで開閉する「テンプレートの設定」内の最下部に表示されます。
「アーカイブテンプレート」の場合も同様に「テンプレートの設定」内に表示されますが、複数のアーカイブマッピングそれぞれに対して設定可能になっています。

「手動」と設定した場合にどの様に動作するか

PowerCMSでは通常、記事を投稿(追加・更新)した場合に、以下のテンプレートでファイルが即時に再構築されます。

  • 公開済みの記事を対象に公開日ベースで前後のアーカイブテンプレート(記事編集画面上部の「< 前」「次 >」の記事です)
  • 公開記事の属するカテゴリーが出力するカテゴリーアーカイブテンプレート(複数所属する場合は複数カテゴリーアーカイブが再構築)
  • 公開記事の公開日ベースの日付アーカイブテンプレートと前後の日付アーカイブテンプレート(月別アーカイブ・年別アーカイブ・月別カテゴリーアーカイブなど)
  • すべてのインデックステンプレート

ただし、それは各テンプレートの公開プロファイルが「スタティック」となっている場合です。
「公開キュー経由」となっているものは、再構築キューに処理がキューイングされ、run-periodic-tasks の実行時に再構築が行われます。
「ダイナミック」及び「公開しない」ではファイルの出力は行われません。
「手動」の場合も同じくファイルの出力が行われません。

記事投稿時以外、再構築ウィンドウのポップアップを使って再構築した時にも、再構築される範囲は記事投稿と異なりますが、上記の動作が適用されます。

つまり、記事の投稿や再構築ウィンドウの再構築では、「手動」のテンプレートからファイルは出力されません。

どのような目的で「手動」に設定するのか

「手動」プロファイルについては、以下の2つの用途が多いです。

  • 先に説明したように記事投稿では「すべてのインデックスアーカイブ」が再構築されるので、再構築に時間がかかるが、通常出力内容に差異が発生しずらく、管理画面作業の結果として更新したいもの。
  • 機能実装の為のダミーデータ(JSONデータ)など、通常は更新される必要がなく、必要な時のみサーバー上のファイルを直接編集せずに更新したいもの。

設定時の注意点

管理画面上の操作では、意図的に出力しない限り「手動」に設定したテンプレートはファイルを更新しません。 しかし、以下の場合に「手動」に設定されたテンプレートからもファイルが出力されます、

PowerCMS添付の tools スクリプト rebuild-archives を利用した場合、「手動」の設定であってもテンプレートの再構築が行われます。

通常はこの動作でも問題はないはずですが、以下のように特殊な運用としている場合に、この動作で問題が発生します。

  1. 機能実装用にダミーデータを出力するテンプレートを「手動]で作成し、ダミーデータを出力する
  2. 入力データ等が揃ったので、上記と同じURLで出力されるテンプレートを 新たに追加 し「スタティック」に設定する

この場合、通常の管理画面操作では「スタティック」のファイルのみが更新されるため、正しく想定したとおりに運用が可能です。
しかし別な理由から rebuild-archives を利用することになり、スクリプトでの再構築が行われるようになった場合、上記の2テンプレートは共に再構築される対象になります。ダミーデータの方が後に再構築されると、データが想定しない初期のダミーデータとなってしまいます。

意図せぬ出力が行われ無いようダミーデータのテンプレートは削除しておくべきです。

重複するパスで出力されるものは、その管理に注意を払う必要があります。


カテゴリー
PowerCMS 5
サイト制作全般
テンプレート作成Tips
技術情報
投稿者
小野崎@アルファサード

Recent Entries