インソースマーケティングデザイン
2011.11.08 システム
【MovableType】出力先設定のちょっとした裏技
こんばんわ、徳山です。
めっきり寒くなってきました、アウターを収納から出し始めました、お帰りアウター。また来年、薄手の服達。
季節の変わり目は風邪ひきやすい、朝や夜はぐっと冷え込んできましたので体調管理はしっかりしましょう、ボクは風邪っぴきなうですががががが
MovableTypeでテンプレートを出力する際に、大抵はブログ設定で出力するメインパスを設定し、
そのパス以下にファイルを出力するって言うのが基本だと思います。
しかし、ビジネスブログにおいて、例えばインフォメーションページ(出力先をhttp://www.hoge.com/info/)に一覧、詳細ページを制作し、
他のページ(http://www.hoge.com/about/)にインフォメーションのエントリーを表示させたい、などとなった際に、
よくやるのはブログ設定をドキュメントルートに設定してそれぞれ出力したいパスで設定するっていうのはあります。
例:ブログ設定・・・http://www.hoge.com/
インフォメーション関連のテンプレート出力先設定・・・info/index.html、info/%c/index.html、info/detail/%f
他のページへ出力するメインページテンプレート出力設定・・・about/index.html
ただし、この場合でインフォメーションにカスタムフィールドで画像を設置した場合や、テンプレートで<$MTBlogURL$>を利用してのリンク付けなどでは
テンプレートに直接URLの続きを書かなくてはいけなかったり、アップロードした際の画像が格納されるディレクトリ(asset_c)などがドキュメントルートに
出来てしまったりなど少々煩雑になります。
どうせならインフォメーションはinfoディレクトリにまとめたい!そのほうがスマートに収まるし、
何より運営していくとサーバ内データが煩雑になってきますから。。。
実はちょっとしたことなんですが、出力先設定は相対パスが適用できます。(MT3.2~現在も可能)
なので、下記が可能になります。
例:ブログ設定・・・http://www.hoge.com/info/
インフォメーション関連のテンプレート出力先設定・・・index.html、%c/index.html、detail/%f
他のページへ出力するメインページテンプレート出力設定・・・../about/index.html
こうすることで限定されたファイルのみをブログ設定外のディレクトリに出力することができます。
しかし注意点。
実はこの設定、ブログ記事アーカイブやブログ記事リストアーカイブなどにも設定可能なんですが、
これを行ってしまうと、<$MTEntryPermalink$>がうまく動かなかったり、プレビューが効かなくなります。(出力する自体は問題ないのですが。。)
なので、実際にこれを行う場合はインデックステンプレートのみにすることをオススメします。