2007年3月17日(土) 仏滅

●【覚え書き】mixiと連携させる

[mixi] Movable Type | mixiとの連携

一日一杯:mixi系ツールのまとめ リンク集

mixiSync
……mixi日記とMovableTypeに同時投稿(プラグイン)

MT2MIXI ver.1.1
……MovableTypeのエントリをmixi日記に連携させるためのPHPスクリプト。
 (mixi側が携帯以外からのメールでの投稿を拒否するようになったため、現在mt2mixiは動作しません。)

MT2MIXI改造方法 : (Dreamのお好み情報箱)
……上記MT2MIXI ver.1.1を改造する方法。
 記事を送信した際のメールのヘッダーに、携帯のアドレスを表示される事で、メール投稿を可能にさせる。

ブログを書いたら mixi 日記に自動投稿(post_blog_to_mixi.pl)
……RSS からタイトルと permalink url をひろって投稿

やむやむ: Mixi参加コミュの最新RSSをプロフィールのページに載せてみる

2007年3月15日(木) 友引

●新着エントリーのあるカテゴリーに New マークをつける

 小粋空間さんの、新着エントリーのあるカテゴリーに New マークをつけるというエントリーを見て、サブカテゴリーリストにやってみることにしました。
 JavaScriptで書かれているので、テンプレート、スタイルシートに書き加えるだけのお手軽カスタムです。

サブカテゴリーリスト(赤字の部分を追加)

<!-- サブカテゴリー用 -->
<div class="side">
<div id="categories">
<MTSubCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>
<MTIfNonZero tag="MTCategoryCount">
<li><a href="<$MTCategoryArchiveLink$>" title="<$MTCategoryDescription$>"><MTCategoryLabel></a> [<$MTCategoryCount$>] <span class="new"><MTEntries lastn="1"><$MTEntryDate format="%Y:%m:%d:%H:%M:%S"$></MTEntries></span><MTElse>
<li><MTCategoryLabel>
</MTElse>
</MTIfNonZero>
<MTSubCatsRecurse max_depth="3">
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTSubCategories>
</div>
</div>
<!-- サブカテゴリー用 -->

スクリプトの追加(追加したいテンプレートの下方、「</body>」の直前に挿入)

<script type="text/javascript">
<!--
// passage time
var pass = 24;

// display content
var content = 'New!!';

var currentDate = new Date();
var spans = document.getElementsByTagName('span');
for (i = 0; i < spans.length; i++) {
if(spans[i].getAttribute('class') == 'new' ||
spans[i].getAttribute('className') == 'new') {
time = spans[i].childNodes[0].nodeValue.split(":");
var entryDate = new Date(time[0], time[1]-1, time[2], time[3], time[4], time[5]);
var now = (entryDate.getTime() - currentDate.getTime())/(60*60*1000);
now = Math.ceil(now);
if(-now <= pass){
spans[i].innerHTML = content;
spans[i].style.display = 'inline';
}
}
}
//-->
</script>

※var pass = 24;の赤字(24)は、新着表示の時間。任意の数字の変更できます。

※var content = 'New!!';の赤字(New!!)は、表示させる内容です。
HTMLタグも使用できるので、画像の表示も可能です
例) var content = '<img src="http://~/hogehoge.gif" style="vertical-align: middle" />';

※ time = spans[i].childNodes[0].nodeValue.split(":");
青字は、
time = spans[i].innerHTML.split(":");
に修正します。(詳細は下記にて)


CSSの設定

span.new {
display: none;
color: red;
font-weight: bold;
}

 これで、新着記事のあるカテゴリーは、リストに「NEW」表示ができるはずだったのですが、CSSの「 display: none;」で非表示設定になっているはずのタイムスタンプが表示され、「NEW」の文字が表示されません。
 色々調べてみたところ、New マーク表示カスタマイズ改善のお知らせという記事を発見しました。
 スクリプトに訂正があったようで、記事に従ってスクリプトを修正したところ(青字部分)、タイムスタンプは表示されず、無事に「NEW」の文字を拝むことができるようになりました。

スクリプトの修正

<script type="text/javascript">
<!--
// passage time
var pass = 24;

// display content
var content = 'New!!';

var currentDate = new Date();
var spans = document.getElementsByTagName('span');
for (i = 0; i < spans.length; i++) {
if(spans[i].getAttribute('class') == 'new' ||
spans[i].getAttribute('className') == 'new') {
time = spans[i].innerHTML.split(":");
var entryDate = new Date(time[0], time[1]-1, time[2], time[3], time[4], time[5]);
var now = (entryDate.getTime() - currentDate.getTime())/(60*60*1000);
now = Math.ceil(now);
if(-now <= pass){
spans[i].innerHTML = content;
spans[i].style.display = 'inline';
}
}
}
//-->
</script>

●エントリーの最終更新日時を表示

 自分の書いた古い記事を読み直して、完了していなかったカスタムを発見しました。
 最終更新日の表示です。
 調べてみたところ、今はMTの標準タグで、エントリーの最終更新日時を表示させる事ができるとか。

参考)MTで最終更新日時を表示する
MovableType備忘録: ブログの最終更新日付を表示する

日本語表記 最終更新日: <$MTEntryModifiedDate$>

英語表記  Last Updated: <$MTEntryModifiedDate language="en"$>

参考)$MTEntryModifiedDate$

●【覚え書き】やってみたいカスタム集

【エントリ編集画面1】

・エントリーのプレビューを行う
エントリーのプレビューを行うプラグイン(MT3.2/3.3対応版)
エントリーのプレビューを行うプラグイン
エントリーの入力中に表示を確認する(04/03 05:27)

MTにお絵かき機能を付ける

caramel*vanilla - [MT3.2]ファイルのアップロードを便利にするプラグイン

【エントリ編集画面2 ボタンの挿入系】
TinyMCE Plugin for Movable Type Ver1.10 Ja
……WYSIWYGエディタ。MacOS10.4以上、CPUはG5以上。
(動作条件とエントリー編集画面のHTMLタグ挿入ボタンの不具合の問題を解決させないと、私の環境では実用的にならない)

caramel*vanilla - [MT3.2]投稿画面にHTMLエディターを組み込む+絵文字

Movable Typeの編集ボタンをちょい便利にするプラグイン doEdit/楽
……「編集画面をデフォルト以上、WYSIWYGエディタ未満」にするプラグイン。
 すごく使ってみたい!! が、Firefox1.5.0.10で、エントリー編集画面のボタンを使用すると画面上方にスクロールされてしまう問題が解決されていないから、うまく使えないかも……。

MTの編集ボタンを追加・改造する

Movable Type のエントリー編集画面に自由に機能追加できるプラグイン (blog.aklaswad.com)

MovableType用EntityRefButtonプラグイン v0.0.5
……エントリー編集画面に、実態参照の変換用ボタンを追加するプラグイン。MT3.3以上
エントリー投稿画面にDecodeボタン/楽

エントリーで色ボタン設定
エントリー投稿画面にFont Colorボタン/楽

リストを簡単につくるPlug-in

エントリー投稿画面にAmazonボタン/楽

エントリー編集画面に打ち消しタグボタン/楽

sorarium : エントリーのリンクtargetを_blankにする

【管理画面】

管理画面のカテゴリーをDescriptionで表示するプラグイン/楽

小粋空間: 管理画面のエントリーリストのタイトルを全て表示する
管理画面でエントリーリストのタイトルを全表示するプラグイン/楽

小粋空間: 管理画面のエントリーリストにパーマリンクを表示する

caramel*vanilla - [MT3.2]管理画面の迷子防止プラグイン

【コメント欄】

コメントにHTMLタグ挿入ボタンをつける(改)

秘密のコメント」プラグイン(MT3.2以降用)

【アーカイブ】

投稿者情報に New マークをつける

エントリーの文字数を表示する

パンくずリスト

新着エントリーのあるカテゴリーに New マークをつける

エントリーの関連付けを行うプラグイン・MT3.2以降用改良版(その3)
……(同一Blogの関連するエントリーを出力するなど)

Snap Preview Anywhereを導入

MovableType3.2 別サイトに記事一覧を表示

MovableType3.2 フッタの西暦表示をリアルタイム化

MovableType3.2 エントリーに関連記事を表示

CheckLinks.pl(エントリ内のリンク切れをチェックする)

カテゴリ内の前後のエントリーを自動的にリビルドする-2

MTプラグイン MTEntry:特定の記事を表示する方法 [ItsMemo::IT]

コメント・トラックバック欄にファビコンを表示

【テンプレート】

カテゴリーごとにデザイン変えるのは可能か?
カテゴリーごとにテンプレートを切り替える

StyleCatcher

【その他】

404 エラーページを作る

ブログではない頁にブログの更新日を表示

MT パスワードを忘れたら、MT-MEDIC: BitbizDesign/Hiroki Harada

ALPSLAB clip!
……Webサイトやブログに、今までになく簡単、便利に、地図を貼り付けることができるサービス

MTAprilFool (期間限定)(ツール) - アイデアマンズ株式会社

複数のブログでモジュールを共有 | Dr.Blog -ブログ研究所

[mixi] Movable Type | Macのローカル環境(MAMP)でMovableTypeを構築

Movable Typeを携帯電話に対応させる「MT-Mobile」

MT 3.2 + Tagwire Pluginでタグ入力をオートコンプリートする - Ogawa::Memoranda

【参考】

Six Apart - Movable Type プラグインディレクトリ

WingMemo: カスタマイズ アーカイブ

カスタマイズ::自宅サーバー構築ブログ

小粋空間: Movable Type プラグイン一覧

小粋空間: ブログ カスタマイズについて

MTプラグイン/お気楽極楽ブログ

MTプラグイン/お気楽極楽ブログ

The blog of H.Fujimoto:タグ「MTプラグイン」を含むエントリー

The blog of H.Fujimoto:タグ「Movable Type 3.2」を含むエントリー

●エントリー編集画面のテキストエリアを広げる

 エントリー編集画面の、「エントリーの内容(body)」のテキストエリアの高さが短く書き込みがしにくかったので、テキストエリアの高さ(行数)を増やしてみました。
 TinyMCE Plugin for Movable Type Ver1.10 Jaではテキストエリアの幅や高さを変えられたのですが、それやるとブラウザが落ちる羽目に至ったので、BigPAPI対応のプラグインで簡単に変えられないかな〜とちょっと探してみたのですが、見あたらないので、「edit_entry.tmpl」を書き換えることにしました。

参考)Movable Type 3.151-jaにアップグレードしました/Tickler's bunkum daysさん
 こちらは、3.151-jaでの書き換えなので、「edit_entry.tmpl」を開いて該当箇所を探して書き換えました。

/tmpl/cms/edit_entry.tmpl:360行目付近

<textarea onkeypress="mtShortCuts(event)" class="full-width" name="text" id="text" tabindex="3" cols="72" rows="<TMPL_IF NAME=DISP_PREFS_SHOW_EXTENDED>10<TMPL_ELSE>20</TMPL_IF>"><TMPL_VAR NAME=TEXT ESCAPE=HTML></textarea>

<textarea onkeypress="mtShortCuts(event)" class="full-width" name="text" id="text" tabindex="3" cols="72" rows="<TMPL_IF NAME=DISP_PREFS_SHOW_EXTENDED>20<TMPL_ELSE>20</TMPL_IF>"><TMPL_VAR NAME=TEXT ESCAPE=HTML></textarea>

 ちなみに、追記部分を広げるのは、

/tmpl/cms/edit_entry.tmpl:384行目付近

<textarea onkeypress="mtShortCuts(event)" class="full-width" name="text_more" id="text_more" tabindex="4" cols="72" rows="15"><TMPL_VAR NAME=TEXT_MORE ESCAPE=HTML></textarea>

 概要部分を広げるのは、

/tmpl/cms/edit_entry.tmpl:391行目付近

<textarea class="full-width" name="excerpt" id="excerpt" tabindex="5" cols="72" rows="5"><TMPL_VAR NAME=EXCERPT ESCAPE=HTML></textarea>

 で、よろしいかと。
 なお、「テンプレート編集画面」のテキストエリアを広げる場合、3.2以降は、/tmpl/cms/edit_entry.tmplではなく、

/tmpl/cms/edit_template.tmpl:132行目付近

<p><label for="text"><TMPL_IF NAME=TYPE_CUSTOM><MT_TRANS phrase="Module Body"><TMPL_ELSE><MT_TRANS phrase="Template Body"></TMPL_IF></label> <a href="#" onclick="return openManual('templates', 'template_body')" class="help">?</a><br /><textarea name="text" id="text" rows="20" cols="72" class="wide"><TMPL_VAR NAME=TEXT ESCAPE=HTML></textarea></p>

 だと思います。
 3.2でBigPAPIをしようしていれば、テンプレをいじらなくても、 The blog of H.Fujimoto:管理画面のカスタマイズをプラグインで行う「BIGPAPI」さん配布しているで、BIGPAPI対応のプラグイン「ExtendEditTemplateTextArea.pl」で簡単に行う事ができます。

2007年3月14日(水) 先勝

●エントリー編集画面のHTMLタグ挿入ボタンの不具合

 基本的に、タグは直接打っていたので気が付かなかったのですが、たまたまエントリー編集画面の文字装飾ボタンを使ってみたところ、いきなり文頭にスクロールされてしまいました。。
 ちょっと調べてみたところ、Windows + IE6で同様の事が起きているらしく、それを回避する方法がありました。

■エントリー編集画面でのタグ挿入ボタンの謎の挙動、解決・・・の巻

/tmpl/cms/edit_entry.tmplの

<a href="#"> を
     ↓
<a href="javascript:void(0);"> に変更

 また、小粋空間さんでエントリー編集画面のHTMLタグ挿入ボタンの不具合を解消するプラグイン(InvalidateLinkOfInsertTag.pl )修正版・エントリー編集画面のHTMLタグ挿入ボタンの不具合を解消するプラグイン(改)が配布されてい
ます。

 で、それぞれ試してみたのですが、私の環境(MacOS10.3.9 & Firefox1.5.0.10、後に2.0.02)ではともに効果がありませんでした。
 (なんとなく、Firefoxの仕様のような気もしますが……)
 ……これまで通り、タグを打てばいいだけの話ですが、編集ボタン周りをカスタムしたかったので、できれば何とか回避させたいところです。
 試しに、Virtual PCを立ち上げ、IE6で診てみたところ、小粋空間さんのエントリー編集画面のHTMLタグ挿入ボタンの不具合を解消するプラグイン(InvalidateLinkOfInsertTag.pl )はきちんと仕事をしていて、スクロールはされなくなっていました。
 そこでFirefoxを最新版(2.0.02)にしてみましたが、改善されません。
 どうしたもんだろう〜。(MTを3.3以上にすればいいんだろうけど、なんとかしたいな〜)
 

●TinyMCE Plugin for Movable Type Ver1.10 Ja

 色々見てまわっているうちに、TinyMCE Plugin for Movable Typeの評判がいいので、導入も簡単だから、試しに入れてみました。

 すげーー、なんか一気にエントリーの編集画面がグレードアップしたぞ〜。
 けど、すげー遅いぞ〜、いじるとすぐにブラウザが落ちるぞ〜!! 
 最初に動作条件を見たところ、MacOS10.4以上、CPUはG5以上推奨となっていましたが、私の環境はMacOS10.3.9、CPUはG4なので、予想できた事なのですが……。
 落ちまくりでは実用的ではないし、ここまでのエディタ使うほどの事はしないので、数分で削除してしまいましたが、機会があればまた使ってみたいです。