覚え書きついでにムーバブルタイプでURLを一切変更させずにPHP化する方法を掲載しておきたいと思います。CMS的に使っている場合は部分的にphpを使うことでナビゲーションやコピーライトなどを連動させることで再構築が不要になります。
あっ正確にいうと、ムーバブルタイプをスタティックパブリッシングのままで、サイトの一部のみをphp化するという感じになると思います。
1.グローバルテンプレートをphpで吐き出すように変更。
各共通パーツはグローバルテンプレートで用意されているのが基本だと思います。そのグローバルテンプレートをphpで吐き出すように変更しておきます。
グローバルテンプレートの「footer」などを分かりやすく「footer.php」などに変更し、必要に応じて内部の該当箇所にphpコードを記述します。
//MTタグの場合
Copyright© 2009-<mt:Date format="%Y" />
//PHP記述の場合
Copyright© 2009-<?php echo date("Y");?>
2.テンプレートの設定のファイルへのリンクを設定する。
phpファイルをひとまとめにしておくため、インストールディレクトリ配下にpartsなどのディレクトリを用意しパーミッションを755に変更。ファイルへのリンクはparts/footer.phpなどに設定し、partsフォルダ内に各phpを吐き出すように設定する。
3.mt-config.cgiを変更する
標準ではphpファイルを666で吐き出してしまうため、644で吐き出させる設定を行う。mt-config.cgiに下記を追記し、アップロード。
DBUmask 0022
HTMLUmask 0022
UploadUmask 0022
DirUmask 0022
HTMLPerms 0755
UploadPerms 0755
4.htmlのままphpとして動作するように設定する
現状の拡張子のままphpとして動かす処理をしないとURLがすべて変更になってしまいます、.htaccessに下記を追記します。
//htaccessの通常の記述方法
AddType application/x-httpd-php .html
//xserverの場合の記述方法(PHP5)
AddHandler x-httpd-php5 .php .phps .html
5.phpを各テンプレートで読み込ませる
今まではMTIncludeでモジュールを読み込ませていたものを手順「1」で設定したphpファイルを読み込ませるように置き換えていきます。
//MTタグでの記述
<$MTInclude module="footer"$>
//PHPタグでの記述
<?php include("http://www.xxxxx.com/mt/parts/footer.php"); ?>
以上で、各テンプレートで「再構築なし」でも常にfooter.phpを読み込みます。
footer.phpなどに下記の記述し、ブラウザを更新した際に最新の時間に更新されていれば常に最新のデータを読み込んでいることがテストできます。
<?php echo date("Y/m/d g:i");?>
これでグローバルテンプレートを修正しても全てのページで自動的に反映されます。