Movable Type(MT)のカスタマイズに関する記事を書いていると、<>や&がたくさん出てきて、そのたびに書き換えないといけなくて結構大変でした。
それを解決するのが、エントリー画面のボタンに「Decode」ボタンをつけてしまう、というもの。
これをつけると、該当の文章をドラッグしてこのボタンを押しただけで、自動的にデコードしてくれるのだ!
なんて素晴らしい!!!
【参考記事】エントリー投稿画面にDecodeボタン [楽]
こちらのサイトにやり方は書いてあります。
MT3.2では、mt/mt-static/mt.js と mt_ja.jsと両方にその、
function formatStr (e, v) {
if (!canFormat) return;
var str = getSelected(e);
if (!str) return;
setSelection(e, ‘< ' + v + '>‘ + str + ”);
return false;
}function Decode(e) {
if (!canFormat) return;
var str = getSelected(e);
if (!str) return;
str = str.replace(new RegExp(“&”,”g”), “&”);
str = str.replace(new RegExp(“< ","g"), "<"); str = str.replace(new RegExp(">“,”g”), “>”);
str = str.replace(new RegExp(‘”‘,”g”), “"”);
str = str.replace(new RegExp(‘ ‘,”g”), ” “);
setSelection(e, str);
return false;
}
function Decode(e) { 以降の部分を追加しないと、うまく動作しませんでした。
あと、書いてありますが、tmpl/cms/bm_entry.tmplとedit_entry.tmplと両方修正しておくこと。bm_entry.tmplはクイックポスト用です。ここにもないとね。
write(‘<a title="<MT_TRANS phrase=
"Decode">" href=
"#" onclick="return
Decode(document.entry_form.text)"><
img src="<TMPL_VAR NAME=STATIC_URI>
images/decode.gif" alt="<MT_TRANS phrase=
"Decode">" width="22"
height="16" border="0" /></a>’);