お知らせ

これだけは知っておきたい Webアプリケーションの常識 2008年3月28日

これだけは知っておきたい Webアプリケーションの常識」が発売されました。
Webアプリケーションを作る上では、HTTPのプロトコルや、開発言語、データベースなど、さまざまな知識を組み合わせることが必要になります。
それらを全般的にまとめた一冊です。
Webアプリケーション開発にチャレンジしたい方や、実際に開発までしないまでも基礎知識として知っておきたい方にお勧めです。

他にも多数書籍を執筆しています。
こちらもぜひご覧ください。

CommentSubscribeプラグインの導入と日本語化

| コメント(4) | トラックバック(0)

Movable Typeで、コメントに返信した際にそのことをコメント元の人にメールで通知するには、プラグインを使います。

Movable Type 3.xの頃はChad Everett氏が開発した「MT-Notifier」というプラグインを使いました。
かつては無償で使うことができましたが、Movable Type 3.3用のバージョン3.4.6以降は有償化されています。
また、Movable Type 4用のMT-Notifierもリリースされましたが、機能強化に伴って料金が値上げされています(個人利用は24$、商用利用は48$)。

このような中で、Robert Synnott氏が、MT-Notifierの機能を単純化したような「CommentSubscribe」というプラグインを発表しました。
こちらのプラグインは無償で利用することができます。
そこで、このプラグインの導入と日本語化の方法を紹介します。

1.CommentSubscribeプラグインのインストール

まず、CommentSubscribeプラグインの解説ページから、プラグインのZipファイルをダウンロードします。
zipファイルを解凍すると「CommentSubscribe」というフォルダができますので、それをMovable Typeの「plguins」ディレクトリにアップロードします。

2.GetQueryParamプラグインのインストール

この後で、コメント入力フォームに、返信メールを送信するかどうかのチェックボックスを追加します。
コメント確認ページでそのチェックボックスが正しく動作するようにするために、拙作のGetQueryParamプラグインをインストールします。

プラグインは以下からダウンロードすることができます。

GetQueryParam_1_11.zip

3.コメント入力フォームの書き換え

次に、「コメント入力フォーム」のテンプレートモジュールで、フォーム内に以下のようなタグを追加します。
コメント入力欄の後あたりに追加すると良いでしょう。

<div id="comment-form-subscribe">
    <label for="comment-subscribe"><input type="checkbox" id="comment-subscribe" name="subscribe" <MTIf name="comment_preview_template"><MTIfQueryParam name="subscribe" value=""><MTElse> checked="checked"</MTIfQueryParam></MTIf> />
    コメントに返信があったときにメールで通知</label>
</div>

タグの追加が終わったら、ブログ記事アーカイブを再構築します。

4.日本語化用辞書ファイルのアップロード

ここまでの状態で、コメント入力フォームで「コメントに返信があったときにメールで通知」のチェックボックスをオンにしてコメントを送信し、そのブログ記事に再度コメントをすると、チェックをオンにしたときのメールアドレスに通知メールが送信されるようになります。
ただ、通知メールは英文になります。

通知メールを日本語化するために、まず日本語化用辞書ファイルをアップロードします。
ファイルは以下からダウンロードすることができます。

CommentSubscribe-ja_1_00.zip

zipファイルを解凍すると、「CommentSubscribe」フォルダができます。
このフォルダを、Movable Typeの「plugins」ディレクトリにアップロードします。

5.CommentSubscribe.plファイルの書き換え

最後に、CommentSubscribeプラグインのCommentSubscribe.plファイルを書き換えて、日本語化の処理を追加し、アップロードし直します。
以下の各箇所を書き換えます。

・13行目
書き換え前

description => "Allows viewers to subscribe to recieve emails every time a comment is posted for a given entry.",

書き換え後

description => '<__trans phrase="Allows viewers to subscribe to recieve emails every time a comment is posted for a given entry.">',

・19~20行目
書き換え前

    plugin_link => "http://myblog.rsynnott.com/software/commentsubscribe.html",
});

書き換え後

    plugin_link => "http://myblog.rsynnott.com/software/commentsubscribe.html",
    l10n_class => 'CommentSubscribe::L10N',
});

・100~101行目
書き換え前

# load_tmpl loads it from the plugin's tmpl directory
my $body = $app->build_page($plugin->load_tmpl('commentsubscribe_notify.tmpl'), $param);

書き換え後

# load_tmpl loads it from the plugin's tmpl directory
my $tmpl = $plugin->load_tmpl('commentsubscribe_notify.tmpl');
$tmpl->text($plugin->translate_templatized($tmpl->text));
my $body = $app->build_page($tmpl, $param);

トラックバック(0件)

このブログ記事を参照しているブログ一覧: CommentSubscribeプラグインの導入と日本語化

このブログ記事に対するトラックバックURL: http://www.h-fj.com/mt/mt-tb.cgi/1077.

コメント(スレッド1件,コメント4件)

コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。

No.1 Aiko : メール送信について

「CommentSubscribe」をインストールし、
コメントフォームへの記述も終わり何度かテスト
したのですが、どうしてもメールが送信されません。
管理者用へはメールは通知されるのですが、送信
されない原因というのは何かございますでしょうか?。
お忙しいところ申し訳ありませんが、お気づきの点、
アドバイス頂ければ幸いです。

No.2  Author Profile Page: Re:メール送信について

>Aikoさん
こんにちは。

プラグインのソースを見た感じでは、返信のメールは、ブログ記事を書いたユーザーを送信元として送信されるようです。
ユーザーの設定で、ブログ記事のユーザーのメールアドレスが設定されているかどうかを確認してみてください。

また、サーバーの設定によっては、送信元のメールアドレスに制限があることもあります。
その場合は、ブログ記事のユーザーのメールアドレスを変えて、制限に引っ掛からないアドレスにすることが考えられます。

No.3 Aiko : 有難うございます

壱様。

お忙しいところRES有難うございます。
こちらのコメント(返信/引用して返信)もユーザーフレンドリーな設計で大変気に入っています。(私のブログにも付けたいですが中々思い通りにカスタマイズできません)

さい、ご指摘いただいたメアドの件ですが、MovableTypeの管理画面には登録してあり、コメントが書き込まれた際なども「お知らせメール」は届くようになっています。

コメントテストもログアウトして書き込んでみたり、メアドを変えて試したり、考えられるパターンで試したのですが、どうしても送信されないのです。(迷惑メールに振り分けられていないかも確認しましたし、フリーメール以外、ブロバイダーのメアドでも試しました)。

サーバーはNIFTY-Serveのラクカーンを利用していますが、SENDメールのアドレスが一般とはちょっと名前が違うだけで、他のCGIなどのフォームメールからも問題なく送信出来ていますので、特別癖があるサーバーではないと思います。

MovableTypeはコメントのRSSフィードが無い?ようなので、利用者にとって返信メールは大変便利だと思ったのですが、思った通りに動かないプラグインが何個かあって試行錯誤の毎日です。

ちなみに、こちらへも会員登録させていただいたのですが、登録後の返信メールがやはり届きませんでした。自分で設置したMovableTypeではメールが届くのに、他のMovableTypeのブログでは届かないというのも不思議な現象です。

No.4 Aiko : (無題)

こんにちはAIKOです。

先日メールが届かないとご報告しましたが、他の方に検証を手伝って頂いたら届くようになりました。というか私の勘違いで、これって”自分で書いたコメントにコメントしても送信されない仕様”なんですね?。

お騒がせして申し訳ありませんでした。

ただもう一点。ご説明では「日本語化用辞書ファイルのアップロード」もありましたが、それをしなくても日本語のまま送られてきました。文字化けではなく”日本語化”とはどの部分を差すのか分かりませんでしたが、上手くいきましたので取り急ぎご報告まで。有難うございました。

コメントする

管理者のみにコメントを送信したい場合は、「コメントを秘密にする」のチェックをオンにしてコメントを送信するか、メールフォームからメールをお送りください。

ブログ全体の感想など、この記事に直接に関係しないコメントは、ゲストブックにお気軽に投稿してください。


アーカイブ

ブログパーツ

ステータス