2005.10.17
MT-3.2のリンク支援(決定版)・・・(Movabletype)
以前、MT-3.17でリンク支援のための改造を書いた。
そちらと合わせて見て欲しいが、MT-3.2になって、メニューを表示させるファイルが違ったものになった。
今度のファイルは/MT/tmpl/cms/blog-left-nav.tmplである。
改行が無いので、分りにくいが以下の部分を探して、赤字部分を追加する。
<TMPL_IF NAME=CAN_UPLOAD><li><a<TMPL_IF NAME=NAV_UPLOAD> class="here"</TMPL_IF> id="nav-upload" title="<MT_TRANS phrase="Upload File">" href="#" onclick="window.open('<TMPL_VAR NAME=MT_URL>?__mode=start_upload&blog_id= <TMPL_VAR NAME=BLOG_ID>', 'upload', 'width=400,height=450,resizable=yes')"><MT_TRANS phrase="Upload File"></a></li></TMPL_IF> <TMPL_IF NAME=CAN_UPLOAD><li><a<TMPL_IF NAME=NAV_UPLOAD> class="here"</TMPL_IF> id="nav-link" title="リンクの編集" href="#" onclick="window.open('/mt/link.cgi?blog_id= <TMPL_VAR NAME=BLOG_ID>', 'upload', 'width=550,height=450,resizable=yes') ">リンクの編集</a></li></TMPL_IF>
以前と同じだが、
(1) title=”<MT_TRANS phrase=”Upload File”>”をtitle=”リンクの編集”
(2) <MT_TRANS phrase=”Upload File”>を リンクの編集 に修正する。
(3) id=”nav-upload” を id=”nav-link”に変更。
(4)window.open(‘<TMPL_VAR NAME=MT_URL>?__mode=start_upload&blog_id=を
window.open(‘/mt/link.cgi?blog_id=に修正。
これで、メニュー表示用ファイルの改造は終了。
次に、小さなアイコンのnav-link.gifをMT/mt-static/imagesにコピー
小さなアイコンを表示するスタイルシートは/MT/mt-static/styles.cssである。
以下の赤字部分を追加する。
.sub a#nav-upload { background-image: url(images/nav_icons/color/upload.gif); } .sub a#nav-link { background-image: url(images/nav-link.gif); } .sub a#nav-comments { background-image: url(images/nav_icons/color/comments.gif); }
・・・/MT ディレクトリーに入れるlink.cgiは以前のを改造してTagをMT-3.2の流儀に合わせ、以下のようなlink.jsを各blogディレクトリーに吐き出すようにする。
文末に私の使っているlink.cgiを載せておく。
function getLinks(){ var link = new Array(); var data = new Array(); var html ="<div class='module-comment module'>"; html += "<div class='module-header'>リンク</div>"; html += "<div class='module-content'>"; html += "<ul class='module-list'>"; /* begin_data */ link[0] = "FreeBSDJapan,http://www.jp.freebsd2.org/"; link[1] = "Nakaさんのページ,http://uls.fam.cx/nakamura/"; /* end_data */ var num = link.length; for(i = 0; i < num; i++){ data = link[i].split(","); html += "<li class='module-list-item'><a href='"+data[1]+"'>" +data[0]+"</a></li>"; } html += "</ul></div></div>"; return html; }
最後に、popupされるWindowだが、MT-3.2のスタイルシートの位置が
・・・/MT/mt-static/styles.cssに変わっているので、link.cgiで吐き出すhtml文部分のスタイルシート指定部分を直す。
また、styles.cssそのものもタグの名前が変わっているので、以前のlink.cgiで<div class=”list”>となっていたのを<div class=”link-list”>と直して、
styles.cssに以下の要素を追加した。
.link-list table th { background-color: #8FAEBE; color: #FFF; vertical-align: middle; text-align: left; font-weight: normal; padding: 2px 5px; border-bottom: 1px solid #FFF; font-size: 90%; } .link-list table { font-size: 11pt; padding: 0px; width: 100%; border-bottom: 1px solid #D7E3F5; } .link-list table tr.odd { background-color: #EAF2FF; } .link-list table tr.even { background-color: #FFF: }
link.cgiで発生させるhtml文中の画像ファイルへのパスも変わり、<img src=”/mt/mt-static/images/topnav-logo-popup.gif”などのように指定する。
link.cgi-3.2
ダウンロードしたらlink.cgiに名前を変え、実行権限を与えてmt.cgiと同じディレクトリーに入れて使うこと。