再構築オプションは、テンプレートを使用してページを出力する方法の設定を行います。設定はブログ全体の基本的な設定、各テンプレート、アーカイブの種類ごとにできます。
ブログ全体の再構築プロファイルを使用する
PowerCMS ではあらかじめテンプレートごとの公開設定をまとめたプロファイルを数種類用意しています。これらのプロファイル使用するには、ブログのテンプレート一覧画面から [公開プロファイルを設定] を選択します。
ここで選択したプロフィールは各テンプレートの再構築オプションで上書き設定できます。また、各インデックステンプレートの [再構築オプション] で [手動] を選択していると、プロファイルを変更しても、そのテンプレートの再構築オプションは変更されません。
- スタティックパブリッシング
- 全てのテンプレートで出力されるページを再構築実行時、静的にファイルを出力します。
- バックグラウンドパブリッシング(バックグラウンドキューを使って再構築を行う場合に選択可能)
- 全てのテンプレートで出力されるページを、バックグラウンドのキューを使用し再構築を定期的に行い、静的にファイルを出力します。
- 一部アーカイブのみ非同期スタティックパブリッシング
- メインページ、ブログ記事アーカイブ、ウェブページアーカイブをスタティックパブリッシングで静的にファイル出力し、他のテンプレートは公開キューを利用して定期的にスタティックパブリッシングを行います。
- ダイナミックパブリッシング
- すべてのテンプレートをダイナミックパブリッシングします。静的なファイルは出力せず、ブラウザからのリクエストがあるごとに動的な表示を行います。
- アーカイブのみダイナミックパブリッシング
- アーカイブテンプレートを動的に出力し、他のテンプレートは静的な出力でファイルを生成します。
テンプレートごとの再構築オプション
テンプレートごとの再構築オプションの設定は、各テンプレート編集画面、テンプレートエディタの下にある [テンプレートの設定] の [公開] セレクトメニューで行います。
公開キューを利用した構築オプション
構築オプションの各設定
テンプレートの再構築オプションでは、以下の種類から設定を選ぶことが可能です。
- スタティック
- 全てのテンプレートで出力されるページを再構築実行時、静的にファイルを出力します。
- 公開キュー経由 (バックグラウンドキューを使って再構築を行う場合に選択可能)
- 管理画面から再構築の操作を行うとキューが保存されます。スケジュールタスクの実行時、保存されたキューを元にファイルを出力します。
- ダイナミック
- 全てのテンプレートで出力されるページを動的に出力します。
- 手動
- インデックステンプレートは、テンプレートを編集後に [保存と再構築] ボタンをクリックするか、[保存] ボタンをクリックしたあと、そのテンプレートの再構築を実行します。
- 公開しない
- テンプレートを再構築しません。
run-periodic-tasks の実行設定
公開キューによるバックグラウンドでの再構築を行うように設定したら、run-periodic-tasks を定期的に実行するように設定します。
cron による実行
cron とは Unix や linux などのサーバー上で定期的にコマンドやスクリプトを実行する機能です。 その cron デーモンの設定ファイル crontab に設定を登録すると、同じ処理を定期的に実行できます。
$ crontab -e
たとえば、毎時0分, 20分, 40分に同じ処理を実行したいときは、次のように記述します。
0,20,40 * * * * cd /path/to/mt; ./tools/run-periodic-tasks
また、5分おきに実行したい場合は、次のように記述します。
*/5 * * * * cd /path/to/mt; ./tools/run-periodic-tasks
デーモンモードでの run-periodic-tasks の実行
cron を使用しなくても、run-periodic-tasks をデーモンモードで実行すると、約5分おきに処理が実行されます。
run-periodic-tasks をデーモンモードで実行するには、以下のコマンドを実行します。
$ ./tools/run-periodic-tasks -d &
テンプレートの再構築は、ログフィードの読み込み時に実行できません。
テンプレートの再構築を実行まちタスクに登録するには
編集したテンプレートを公開キュー実行時に再構築させるには、まず『再構築を行う』というタスクを実行まちタスクリストに登録します。この作業は単純にテンプレートを編集したあと、[保存と再構築] ボタンをクリックするか、保存後に再構築を実行します。
設定のポイント
- RSD, CSS, Javascript は静的にファイルを出力するようにしてください。
- インデックステンプレートはまとめて再構築されます。テンプレート単位で再構築を行わないようにしたいときは [Manually] を選択してください。
- 日付ベースのアーカイブは、バックグラウンドで実行する公開キューを使用した構築をオススメします。
- PowerCMS にユーザーが一人のときは、ユーザーアーカイブを無効にしましょう。