去年、MT 4.2 を導入したときに、MT のアップロード画像のキャッシュディレクトリ変更のカスタマイズまでは施していましたが、画像アップロードのデフォルトディレクトリ指定変更のカスタマイズをしなくては、と思いつつ放置していました。でもさすがに毎回手動で変更するのも面倒になってきたので、重い腰を上げてちょっと調べてみました。
私はエントリーに載せる画像ファイルはアーカイブディレクトリ以下の「img/YYYY/MM」ディレクトリにアップするようにしています。
が、MT 4.x のデフォルト設定は、サイトパス直下にアップするようになっています(;´Д`)ヾ。
これでは、何も考えずに画像アップロードしていると、サイトのルートにどんどん画像が溜まっていくことに(´д`)。メンテナンスしづらくてしょうがありません。
で、目的のディレクトリをデフォルトに設定するために、参考にさせていただいたのは以下の 2 つの記事。
画像アップロード先の初期値設定 – 羽根愛好家
MT4.Xでファイルアップロード先を便利にデフォルト指定する/楽
どちらも、MT 4.x の「/tmpl/cms/include/asset_upload.tmpl」をいじります。
一つめは、プルダウンのデフォルト選択値を「サイトパス」から「アーカイブパス」に変更するカスタマイズ。<option>タグの並び順を変更して「アーカイブパス」が一番最初に来るようにします。「アーカイブパス」の option 要素に「selected」属性をつけても良いのかもしれませんが、実績があるものを利用させてもらうのはプログラムの鉄則です(笑。
二つめは、asset_upload.tmpl ファイルの 1 行目に
<mt:setvarblock name=”extra_path”>img/<$mt:date format=”%Y%m”$></mt:setvarblock>
を記載するだけ。
この二つのカスタマイズを施すことで、思ったとおりのデフォルト指定ができるようになりました。
これで複数画像をアップする作業も少しはラクになりました。まあ、複数画像をまとめてアップロードできるプラグインを入れたほうが遙かにラクかもしれませんが、そういうのってシェアウェアばかりだし・・・。