MovableType ファイルアップロード先の変更とキャッシュフォルダ名の変更

MovableType 6.3ファイルアップロード先の変更とキャッシュフォルダ名の変更

最終更新日:2017年8月16日

アップロード先の変更

標準では、ファイルのアップロード先が各ブログ配下になっている。
できれば画像等のファイルは1つのフォルダにまとめたいので、カスタマイズ。

管理画面用テンプレート編集前の準備

管理画面用のテンプレートは、
/tmpl/
に入っていますが、これをそのまま編集すると、MT(MovableType)のバージョンアップ等があった場合に上書きされてしまいます。
編集したいファイルだけを
/alt-tmpl/
にコピーすることで対応できます。
今回は、
/tmpl/cms/include/async_asset_upload.tmpl
を、 /alt-tmpl/cms/include/async_asset_upload.tmpl
にコピー。

コピーした管理画面用テンプレートを編集

162行目あたりを、
      <mt:if name="destination_loop">
        <select name="destination" id="destination" onchange="uploadDestinationSelect(this);">
        <mt:loop name="destination_loop">
          <option value="<mt:var name="path" escape="html">"<mt:if name="selected"> selected="selected"</mtif>><mt:var name="label" escape="html"></option>
        </mt:loop>
        </select>
        <input type="text" id="upload_destination_custom" class="text path required valid-path upload-destination hidden" disabled="disabled" name="destination" value="<mt:var name="destination" escape="html">" />
        <span class="upload-extra-path">
          / <input type="text" name="extra_path" id="extra_path" class="text path" value="<mt:var name="extra_path" escape="html">" />
        </span>
      </mt:if>


      <mt:if name="destination_loop">
       <input type="text" name="destination" id="destination" class="text path" value="<mt:If tag="BlogRelativeURL" ne="/">..</mt:If>/_media<mt:BlogRelativeURL><$mt:Date format="%Y/"$>" />
        <input type="text" id="upload_destination_custom" class="text path required valid-path upload-destination hidden" disabled="disabled" name="destination" value="<mt:var name="destination" escape="html">" />
        <span class="upload-extra-path">
          <input type="text" name="extra_path" id="extra_path" class="text path" value="" />
        </span>
      </mt:if>

へ編集。
かなりやっつけですが、これで
/_media/ブログ名/年4桁/
に入るようになりました。
サイトでアップロードしたときとブログでアップロードしたときは階層がひとつ変わってしまうので、IF文で制御しています。

キャッシュフォルダ「assets_c」の変更

画像をアップロードすると、サムネイル用のキャッシュ画像も自動生成されますが、デフォルトだといろいろなところに「/assets_c/」が出来てしまいます。
これを一カ所に集めたかったのですが、コードを見る限りコアハックが必要なようなので、メンテナンス性を考えて諦めました。。
フォルダ名だけであれば、mt-config.cgiに
AssetCacheDir (フォルダ名)
と1行追加するだけで変えることができます。

※編集をしたMTのバージョンは6.3です。

コメント(0)

コメント投稿画面を開く
CLOSE ×