delicious! newsing! buzzurlにブックマーク! Yahoo!ブックマーク ライブドア - この記事をクリップ! このエントリーを含むはてなブックマーク

Movable Type :: エントリの出力ファイル名に連動した小画像をTOPに表示するphpスクリプト

2007/6/11 (Mon) at 10:25 am

エントリのアイコン

トップページを変えてみました。こんなかんじで。ところで、みなさんはMovable Typeを使うとき、エントリの出力ファイル名をどのようにしていますか?

デフォルトの状態でお任せコースにしておくと、エントリ名に英数字が含まれればそれを優先してファイル名に使う、日本語しか含まれていなければ "post" ナントカっていう名前が勝手に割り振られます。アレっていまいちイヤです。わかりにくいし醜悪。てわけで、私がよく使うのが、投稿の日時+秒数というものです。2007年6月10日13時24分56秒に投稿されたエントリには、"20070610132456.html" というファイル名が勝手につくように設定するには、設定→公開のところにある出力フォーマットのファイル名を以下のようにします。

%y%m%d%h%n%s%x

この%ナンチャラというヤヤコシそうな文字列についてはMovable Typeのマニュアルの↓

下のほうにある『付録』の項目の『日付フォーマット・アトリビュート』のページに詳しく載っています。ちなみにこの付録の周辺はなかなか便利なものが揃っていて「あ、こんなのあったのか」といまでも発見したりします。マニュアル読まないときが多いので、たまに読むとトクしたきぶんになります。

んで、上に述べた%yナンチャラっていうのを出力ファイルに指定しとくと"20070610132456.html"みたくな出力ファイル名になってくれるわけですが、今回、コレを使ってTOPページに表示される100x100pxの画像を出すのをphpで書いてみました。こんなかんじで↓

このコードをインデックステンプレートの<MTEntries>〜</MTEntries>内の画像を表示したいぶぶんに書いとく。DOCUMENT_ROOTにある "icon-pic" というディレクトリに、出力ファイル名に合わせた名前の画像ファイル、たとえば "20070610132456.gif" なんていうのをつくって入れとくとそれを表示します。gif/jpg/pngの拡張子を持つファイルを探して、なければ "no-pic.gif" という画像を代替表示します。ファイル名を間違えてアプしてしまったりしても代替画像が出るのでバッテンになりません。

ちなみにこれはMTタグを変数に代入してるので、ダイナミックパブリッシングには使えません。スタティックのみです。こういうやり方もありますよという話でした。

delicious! newsing! buzzurlにブックマーク! Yahoo!ブックマーク ライブドア - この記事をクリップ! このエントリーを含むはてなブックマーク

コメント・プリーズ!

お名前 (your name)
(required)
url
(optional) ※公開されます。
メールアドレス (email)
(optional) ※公開されません。管理者にだけわかります。
コメント (comment)
(required)

※クッキーに保存すると次回から入力を省略できるので便利ですが、お使いのコンピュータに情報が残りますので、公共のパソコンなどからアクセスするような場合はチェックをはずしたほうがよいでしょう。

※コメント中のhtmlタグは実体参照に変換されます。たとえば、『<』は『&lt;』というかんじになりますのでhtmlタグをそのまま書き込んでくださってオッケーです。

one-px-ffffff-tl one-px-ffffff-tr one-px-ffffff-bl one-px-ffffff-br

PROFILEcaption

藤居ヒロヤ。ウェブデザイナー/ウェブディレクター。ウェブデザインオフィス、3OT NET主宰。名古屋市中区。「優しいデザイン」「激しいデザイン」「正しいデザイン」「セクシーなデザイン」「泣けるデザイン」「もっともなデザイン」... 。あなただけのウェブデザインを丹精込めておつくり致します。見積り依頼等、お気軽にお問い合わせ下さい。

お問い合わせフォーム

RECENT ENTRIEScaption

RECENT COMMENTScaption

TOOLScaption

BOOKMARKScaption

RESOURCEScaption

ARCHIVEcaption