Movable Type入門 » 3.17バージョン対応

エントリーで色ボタン設定(ver3.17対応)

MovableTypeのバージョンが3.17にあがって以前の3.15から書き方が変わってます。
今後もバージョンがあがるたびに内容が変わる可能性があるので内容をしっかり理解してください。

まずやりたい事ですがMovableTypeの新規エントリー画面は
entrybefore.gif
のようになっていて、色の指定に<font color=~>とタグを書かなくてはいけません…
そこで
entryafter.gif
のように新規エントリー画面に色指定できるボタンを作成します。

作業は3点あります。
1.イメージファイルをアップロード
 /cgi/mt/imagesの配下に画像gifをアップロードします。

darkred.gif
この画面で使っている画像です。
もし使われるようならダウンロードしてください。

2./cgi/mt/tmpl/cms/edit_entry.tmplを修正

186行目からがエントリーの内容、210行目からが追記のボタンを決めています。
まず186行目

write('<a title="<MT_TRANS phrase="Bold">" href="#" onclick="return formatStr(document.entry_form.text_more, \'strong\')"><img src="<TMPL_VAR NAME=STATIC_URI>images/html-bold.gif" alt="<MT_TRANS phrase="Bold">" width="22" height="16" /></a>');

の上に
write('<a title="<MT_TRANS phrase="DarkRed"escape="singlequotes">" href="#" onclick="return formatColorStr(document.entry_form.text, \'990000\')"><img src="<TMPL_VAR NAME=STATIC_URI>images/darkred.gif" alt="<MT_TRANS phrase="darkred"escape="singlequotes">" width="22" height="16" /></a>');

を追記します。


3./cgi/mt/mt.jsを修正

場所はfunction insertLink (e, isMail) {の上あたりに

function formatColorStr (e, v) {
if (!canFormat) return;
var str = getSelected(e);
if (!str) return;
setSelection(e, '<font color="#' + v + '">' + str + '</font>');
return false;
}

を追記します。

以上で完成です。

さらに色を追加したい時は
1.ボタンは作成してください。(ペイントで簡単にできます。)
2. /cgi/mt/tmpl/cms/edit_entry.tmplで追加したコードの上に

write('<a title="<MT_TRANS phrase="DarkRed" escape="singlequotes">" href="#" onclick="return formatColorStr(document.entry_form.text, \'990000\')"><img src="<TMPL_VAR NAME=STATIC_URI>images/darkred.gif" alt="<MT_TRANS phrase="darkred" escape="singlequotes">" width="22" height="16" /></a>');

を自分が追加したい色に変更して追加してください。

3.は必要ありません。

おまけ
作業の確認をすると、


 1.表示する画像をアップロードしています。

 2.管理画面のを編集しています。(HTMLにコードを足しているのと同じです。)

 3.javascriptでプログラムを追加しています。


どんな作業をやったかを正しく理解する事で
もうちょっと違った事がやりたい!」とか「動かない…」という事にも対応できるようになります。
大事なことです…