- 2010年5月17日 17:11
- Movable Type
MT(Movable Type)の再構築に関する話題が多い中、実績を基に解説していきます。
今回はMTの再構築時間が遅い方に向けた情報です。
参考までにMT4でPHP化が済んでいて、エントリー総数2000、カテゴリー総数50という環境を前提にお話していきます。
行った方法は、カテゴリーを含むサイドバーを インクルード【nclude】するだけです。
カテゴリーを含んでいるのが肝心なので、二度言わせていただきました。
と言うのも、構築の際にネック(所要時間が大)になっている部分だからです。
そういった部分を外部ファイルにすることで大きな効果が得られます。
私がおこなった方法は以下の通りです。
「インデックステンプレートを作成」でサイドバー用のファイルを新規作成。
- テンプレート名
- 他ファイルと干渉しない任意のファイル名
(例:サイドバー) - 出力ファイル名
- 他ファイルと干渉しない任意のファイル名
(例:mt/templates/side_bar.php) - 公開
- スタティック
2カラムでの場合は1つ作成すれば構いません。
公開をスタティックにしたのはカテゴリーなどの変動がある要素に対応する為です。
3カラムの場合は「Left」「Right」などを混ぜて2つ作ると良いでしょう。
更新要素が無い場合は公開を「手動」にして構いません。
作成したテンプレートに必要な要素を追加していきます。
以下はあくまでもデフォルトに近い例ですので、環境に合わせて読み替えて下さい。
<$MTInclude widget="About"$> <$MTInclude widget="カテゴリーリスト"$> <?php // トップページの場合 if($_SERVER['SCRIPT_NAME'] == "/index.html") { ?> <$MTInclude widget="月別リスト"$> <?php } ?>
上記の場合は、Aboutとカテゴリーリストを表示して、トップページの場合だけ月別リストを表示する参考例です。
次に「ウィジェットテンプレートを作成」でウィジェットを作成します。
- テンプレート名
- 他テンプレートと干渉しない任意のファイル名
(例:サイドバー)
作成したウィジェットの内容は先ほど作成したインデックステンプレートをインクルードする記述を書くだけです。
<?php include("<$MTBlogSitePath$>mt/templates/side_bar.php"); ?>
最後にウィジェットセットへ作成したウィジェットを設定して終了です。
最初は全て再構築せずにメインページだけ再構築して確認してください。
サイドバーが表示されない場合は、作成したインデックステンプートが存在しているか確認してください。
無い場合は、保存と再構築で作成されます。
私はこれだけで2~3時間くらいかかっていた再構築が2~30分で終わるようになりました。
- Newer: MT PHP化
- Older: Apache 2.2 PHP & suPHP 共存
Comments:0
Trackbacks:0
- TrackBack URL for this entry
- https://www.fya.jp/cgi-bin/mt/mt-tb.cgi/93
- Listed below are links to weblogs that reference
- MT 再構築高速化 by PHP from Minase's Blog - FYA