Ramdom Entry Pickup
- メロメロパークのRSS取得が復活(BlogPet) (2005年10月15日)
- 1ヶ月が過ぎてSEOはどうなったかな? (2005年05月02日)
- 「母の日」に届かない花。。。。ゴルァーーーー!!!(BlogPet) (2006年05月25日)
- もっと、いじってくれ~~!! (2005年06月30日)
- 個別ページにリンク用等のアドレスを表示する (2006年01月29日)
« 「ブログ」はネット空間のリアル世界でもある。 | メイン | 「書」 »
前回、画像のアップロード先のフォルダを月別にする、というカスタマイズを紹介しましたが、
MT3.3になってから、アップロード画面が大幅に変更になりました。
オプションを選択することにより、アップロード先を変更できるようになりました。
↓こんな感じ。

しかし、このオプションを選択し忘れると、
ブログのルートフォルダに大量に画像が溜まってしまいます。
そこで、デフォルトを「日付で区切ったフォルダ」に変更しました。
また、オプション選択時も条件によって、アップロード先を変更できるようにしました。
以下のようにファイルを修正してください。
「(MTPath)/tmpl/cms/upload.tmpl」を編集します。
ファイル先頭のJavascriptを編集します。
編集前
<script type="text/javascript">
<!--
function setExtraPath(sel) {
var opt = sel.options[sel.selectedIndex];
var path = opt.getAttribute("middle_path");
if (!path) path = '';
var middle = sel.form['middle_path'];
if (middle) middle.value = path;
}
//-->
</script>
編集後
<script type="text/javascript">
<!--
var today = new Date();
var num_year = today.getYear();
var str_year = String((num_year < 2000) ? num_year + 1900 : num_year);
var num_month = today.getMonth() + 1;
var str_month = (num_month < 10) ? "0" + num_month : String(num_month);
function setExtraPath(sel) {
var opt = sel.options[sel.selectedIndex];
var path = opt.getAttribute("middle_path");
if (!path) path = '';
var middle = sel.form['middle_path'];
if (middle) middle.value = path;
if (path) {
document.forms[0].extra_path.value = "images/";
} else {
document.forms[0].extra_path.value = "images/" + str_year + "/" + str_month;
}
}
//-->
</script>
そして、オプションでパスを入れる入力フィールドの部分の直後の部分も修正を加えます。
<script type="text/javascript">
<!--
document.forms[0].extra_path.value = "images/" + str_year + "/" + str_month;
//-->
</script>
これでオプションでアップロード先を選択し忘れても、
日付で分けられたフォルダが作成され、そこにアップロードされます。
ちなみに、オプションを開いたらどうなっているのかというと、
オプションを開いただけでは、通常、「サイトパス」が選択されていますが、
プルダウンの横の入力フィールドに
今月の日付フォルダが自動入力されているのがわかるかと思います。

次に、オプションでMTの標準で日付指定されたものを選ぶと、
下記のように「images」フォルダだけを作成するようにしています。

Link HTML:
トラックバックURL:
» MT3.33へUpdate! from
Hitorigoto?
» 画像のアップロード先の指定 from
14000.Rev Limit
コメント
これ、導入しようと思うのですが・・・ひとつ変更できないのかなと思って悩んでるんです。
この設定の場合、はじめ選択しないままの
状態だとアップロード・パスの設定 は
<サイトパス> images/2006/11
こんな風になるっていうことですよね。
だとすると、各月ごとにimageファイルが作られるということに・・・。
それでも良いのですが、たとえば
<サイトパス> /images
サイトパスの部分を初めからimagesにするということはできませんかね?
できたら、良いなと思ってるんですが・・・。
Posted by: ゆう | 2006年11月13日 22:40
>ゆう さん
それでしたら、
/ <input name="extra_path" id="extra_path" />
<script type="text/javascript">
<!--
document.forms[0].extra_path.value = "images/" + str_year + "/" + str_month;
//-->
</script>
を
/ <input name="extra_path" id="extra_path" />
<script type="text/javascript">
<!--
document.forms[0].extra_path.value = "images/";
//-->
</script>
に修正すればいいかと思います。
(たぶん(^^;))
Posted by: showBOO
|
2006年11月17日 17:40
おぉ〜!!
showBOOさん、ありがとうございます。
早速やってみようと思います。
また、できたら記事でもアップして報告しに来ますね。(^^)
Posted by: ゆう | 2006年11月19日 19:36
>ゆうさん
この記事へのトラックバック記事
14000.Rev Limitさんのページでもっと有効なカスタマイズがありますので、そちらも参考にされてみてはいかがでしょうか?(^^;)
Posted by: showBOO
|
2006年11月22日 17:17
3.2版のときに3.3のこれが欲しいなと思ってコメントさせていただたものです。
ずいぶん時間が経ってしまいましたが、使わせていただこうかなと思います。
ありがとうございます。
このあたりってバーションアップするたびにもとのtmplが変更されてしまうことが多かったりで、バージョンアップのたびに気がかりですね。
デフォルトの設定がせめてルート直下でなければ、我慢できるんですけどね。。。
Posted by: スター | 2007年3月 1日 17:03
>スターさん
たしかに毎回変更するのは面倒ですよね~
これ、Six Apartに改善してもらいたいですね(^^;)
これをプラグインとして作成したいのですが、まだプラグインの作成スキルがないもので。。。
プラグインとして作成できた際にはまた公開させて頂きます。
気長にお待ちください(^^;)
Posted by: showBOO
|
2007年3月 2日 16:47