« 2007年7月 | メイン | 2007年10月 »

2007年8月 アーカイブ

2007年8月10日

MovableType用BMQuote Plugin Ver.0.61

MovableType用BMQuote Plugin が、MovableType 4に対応しました。

MT4をお使いの方は、ぜひ、お試しください。

ドキュメント:BMQuoteプラグイン ドキュメント
ダウンロード:zip形式tar.gz形式

お問い合わせ

エムロジック株式会社ではMovable Typeによるサイト構築やプラグイン開発、iPhone・Windows等のアプリケーション開発業務を行っています。
お問い合わせはこちらまで。

MovableType用Counter Plugin Ver.0.60

MovableType用Counter プラグインをバージョンアップしました。変更点は次の通りです。

  • MT4に対応

最近のエントリのリストや、アーカイブのリストなどを表示するときに、今表示しているのが何番目の項目なのかを知りたいことがあると思います。
例えば、各項目の間にborder-topで区切り線を入れたい場合、最初の項目にはborder-topを適用させず、2番目の項目から適用させたいとか、奇数行と偶数行で異なるスタイルを与えて背景色を交互に変更したいといったことがあります。
これを実現する「Counterプラグイン」を作ってみました。

<MTCounter>
   <MTEntries>
      <$MTCounterPlus$>
      <span<MTCounterIfOdd> class="odd"</MTCounterIfOdd>>
      <$MTEntryTitle$>
      </span>
   </MTEntries>
</MTCounter>

こんな感じで、行ごとのスタイルを交互に変更することができます。
カウントアップも、カウントダウンもできますし、カウント値の比較、奇数か偶数かの判定も可能です。
あると便利なプラグインだと思います、ぜひ、お試しください。

ドキュメント:Counterプラグイン ドキュメント
ダウンロード:zip形式tar.gz形式

MovableType用UploadDir Plugin Ver.0.60

MovableType用UploadDirプラグインのバージョンアップを行いました。変更点は次の通りです。

  • MT4に対応
  • メッセージの日本語化

MovableTypeにはファイルをアップロードする機能がありますが、ちょっと物足りないところがありました。
ファイルをアップロードするときに、アップロード先のディレクトリを指定できるのですが、標準では、このディレクトリを毎回指定する必要があります。
これは、たとえば、画像はimagesディレクトリの下に必ず保存しておきたい、という時には非常に不便なのです。
そこで、今回「UploadDirプラグイン」を作ってみました。
このプラグインを使うと、アップロードするファイルの拡張子にしたがって自動的に保存先のディレクトリを切り替えることが可能になります。

たとえば、GIFファイルを選択すると、

updir_gif.gif

パスにimagesが入力されます。
AVIファイルを選択すると、

updir_avi.gif

パスにvideoが入力されます。
拡張子とディレクトリ名の関連付けはプラグインの設定から自由に行うことができます。

ぜひ、お試しください。

ドキュメント:UploadDirプラグイン ドキュメント
ダウンロード:zip形式tar.gz形式

MovableType用RenameLabel Plugin Ver.0.60

MovableType用RenameLabelプラグインのバージョンアップを行いました。変更点は次の通りです。

  • MT4に対応

標準のエントリー編集画面で、例えば、「キーワード」フィールドにはファイルのURLを入れるとか、追記部分には「レビュー」を書くとか、本来のフィールドの名称とは異なった運用の仕方をすることがあります。
しかし、キーワードにURLを入力するというのは、なんとなく不自然ですし、運用時に説明しなくてはいけないというのも面倒です。
そこで、エントリー編集画面のフィールド名を変更するプラグインを作ってみました。

各ブログの「設定」画面で「プラグイン」タブを選択し、RenameLabelプラグインの「設定を表示」をクリックすると以下の画面が表示されます。

conf.gif

各フィールドに対応した入力フィールドに変更したいフィールド名を入力します。
入力後、「変更を保存」ボタンを押すと、内容が適用され、エントリー編集画面のフィールド名が変更されます。

edit.gif

ぜひ、使ってみてください。

ドキュメント:RenameLabelプラグイン ドキュメント
ダウンロード:zip形式tar.gz形式

当サイトで公開しているMTプラグイン等のMT4対応状況

当サイトで公開・配布しているMTプラグインやスクリプトのMovable Type 4対応状況をお知らせします。

2007/08/14現在

MT4対応(そのままご利用いただけます)

MT4対応済(最新版にアップデートすることでご利用いただけます)


2007年8月14日

MovableType用EntityRefButtonプラグイン v0.2.0

EntityRefButtonプラグインのバージョンアップを行いました。変更点は次の通りです。
  • MovableType v4.0に対応しました。

MovableType v4.0での変換ボタン

convert-button-v4.jpg

MovableType v3.3xでの変換ボタン

convert-button.jpg

エントリー編集画面およびクイック投稿画面に追加される「&(アンパサンド)」ボタンを押すだけで、選択した文字列を実体参照化してくれる便利なプラグインです。
ぜひお試しください。

ドキュメント:EntityRefbuttonプラグイン ドキュメント
ダウンロード:zip形式tar.gz形式

2007年8月27日

MovableType用EasyPodcasting Plugin Ver.0.60

Movable Typeで手軽にPodcastingを始めることができるEasyPodcastingプラグインがMT4の「アイテム」機能に対応しました。

今までの

  1. 各種アーカイブのMTEntryBodyタグなどにグローバルフィルタEasyPodcastingを追加する
  2. RSS2.0テンプレートにMTEasyPodcastingタグを追加する
  3. mp3ファイルをFTPツールでサーバにアップロード
  4. エントリ中に[mp3:mp3のURL:タイトル]の形式で独自のタグを入力
  5. エントリ保存

という流れが

  1. RSS2.0テンプレートにMTEasyPodcastingタグを追加する
  2. mp3ファイルMT4のファイルアップロード機能を使って、エントリ中に追加する
  3. エントリ保存
  4. コーヒーを飲む

と劇的に簡単になります。

今回の機能追加は、Movable Type 4 Hack-a-thonでの成果です。

ぜひ、お試しください。

ドキュメント:EasyPodcastingプラグイン ドキュメント
ダウンロード:zip形式tar.gz形式

なお、今回のプロジェクトでは、プラグイン開発をエムロジック株式会社、Flash製mp3プレーヤの開発をiceGearが行いました。
iceGearでは、mongocco!というWindows用のアバターチャットソフトウェアを開発しています。ぜひ、遊んでみてください。

MT4の「アイテム」を拡張する

先日、Movable Type 4 Hack-a-thonに参加してきました。

ハッカソンとは、プログラマが一堂に会して、黙々と、ときには見せ合ったり質問しあったりしながら、自分のしたいことについて自分のしたいようにプログラムを書くというイベントです。

ということで、思いっきりHackを楽しんできました。その成果は、MovableType用EasyPodcasting Plugin Ver.0.60になります。

今回は、そのHackをする中で、MT4の「アイテム」の拡張の仕方が分かったので、簡単にまとめておこうと思います。

MT4ではファイルのアップロードおよび管理をするための機能として「アイテム」という概念があります。
これにより、ファイルをアップロードして、WYSIWYGのエディタに貼り付けると、画像ならイメージタグが、ファイルならリンクが追加されることになります。
今回は、この機能を拡張して、mp3ファイルがアップロードされると、Flash製のmp3プレーヤを表示できるようにしてみました。
アイテムは、MT::Assetをベースにした、

  • MT::Asset::Audio
  • MT::Asset::Image
  • MT::Asset::Video

これらのオブジェクトによって、メディアのタイプ別に管理されます。
今回は、MT::Asset::MP3を新たに追加します。
MT::Assetを継承したクラスを作り、そこに

__PACKAGE__->install_properties({
    class_type => 'mp3',
});

として、class_typeの追加を行った後、extensions、class_label、class_label_plural、as_htmlメソッドを追加しました。

sub extensions { [ qr/mp3/i ] }

として、mp3という拡張子を持つものをターゲットとすることを指定します。
class_label、class_label_pluralでは、

sub class_label {
    MT->translate('MP3');
}

sub class_label_plural {
    MT->translate('MP3');
}

このように、メディアの種類のテキストを返します(今回の場合translateは必要ないような気もしますが……)。

as_htmlでは、エディタに挿入するHTMLコードを指定します。

sub as_html {
    my $asset = shift;
    my ($param) = @_;

    my $url = $asset->url;
    my $blog = $asset->blog;
    my $title = $asset->label;
    my $path = MT->instance->static_path;
    $path .= '/' unless $path =~ m!/$!;
    $path .= 'plugins/EasyPodcasting/mp3player.swf';

    my $html = <<"EOT";
<div class="mp3">
<div class="mp3_player">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="250" height="50" id="mp3player" align="middle">
    <param name="allowScriptAccess" value="sameDomain" />
    <param name="movie" value="$path?mp3url=$url" />
    <param name="quality" value="high" />
    <param name="bgcolor" value="#ffffff" />

    <embed src="$path?mp3url=$url" quality="high" bgcolor="#ffffff" width="250" height="50" name="mp3player" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</div>
<div class="mp3_link">
<a href="$url" class="link_mp3" title="$title">$title</a>
</div>
</div>
<!-- [mp3:$url:$title] -->
EOT

    return $asset->enclose($html);
}

このファイルをasset_mp3.plなどとしてpluginsディレクトリにおいて置けばオッケーです。

ただ、このようにWYSIWYGエディタにFlashのオブジェクトを貼り付けた場合、WEBブラウザによっては、表示されないことがあるようです(例えば、Windows版のFirefox)。これは、エディタ側の問題なのかな、と思います。