カテゴリーアーカイブの再構築エラー@MT4
MT4にしてからカテゴリーアーカイブの再構築で「500 Internal Server Error」が出るようになってしまったため、分割再構築などを試してみたのですが改善せず、いろいろと模索していた中で発見したのが以下のエントリー。
要はエントリーの本文部分を別ファイルに書き出し、ページが読み込まれたときにincludeして読み込むというもの。なお、サーバがPHPに対応していること、MovableTypeのPHP化をしていることが前提となります。
まずはじめに、エントリー本文のアーカイブテンプレート(ブログ記事、名前は任意)を作成します。内容は以下の通り。
<$MTEntryBody$>
アーカイブマッピングは「ブログ記事」で作成し、パスは以下のようにします(ベースネームを使用している場合は、ベースネームを含むものにします)。
%y/%m/%d/%h%n%s_body.php
同様に追記部分のアーカイブテンプレートも作成します。
<$MTEntryMore$>
%y/%m/%d/%h%n%s_more.php
次に、「ブログ記事の概要」「ブログ記事の詳細」モジュールの<MTEntryBody>を以下の内容に置き換えます(ベースネームを使用している場合は、MTEntryBasenameを使うといいかもしれません)。
<? include"<$MTBlogURL$>/archives/<$MTEntryDate format="%Y/%m/%d/%H%M%S"$>_body.php";?>
こうすることで、再構築で生成されるページには本文の代わりに<? include〜>という一行のみが出力されるようになります。
同様に、「ブログ記事の詳細」モジュールの<MTEntryMore>を以下の内容に置き換えます。
<? include"<$MTBlogURL$>/archives/<$MTEntryDate format="%Y/%m/%d/%H%M%S"$>_more.php";?>
あとは再構築して終了。重いことは重いんですが、500エラーは出なくなりました。
(追記)
この方法だと、エントリーのプレビューができなくなります(まあ、当然っちゃ当然だけど)。
トラックバック
このブログ記事を参照しているブログ一覧: カテゴリーアーカイブの再構築エラー@MT4
[PR]

コメントする