Movable Typeにはコメント・システムが内蔵されています。 ブログの「コメント」エリアでは、既存のコメントを編集でき、「エントリーの編集」画面では、特定のエントリーに関連したコメントを表示できます。 どちらも、コメントを削除するには「 削除 」をクリックします。
Movable Typeに搭載されているデフォルト・テンプレートはコメントに対応済みです。つまり、どのコメント・テンプレートを変更することなく、ブログでコメントを使える状態になっています。 デフォルト・テンプレートでは、コメントは、メイン・インデックス・テンプレートからリンクされたポップアップ・コメント・ウィンドウと、個別のアーカイブ・ページの両方に表示されます。 この設定を変更するには、該当するテンプレートを書き換えます。
Movable Typeのコメント・システムは、以下の2つ方法のどちらか、あるいは両方で使用できます。
個別のエントリー・アーカイブ(「アーカイブの設定」を参照)を使うと、各アーカイブのページには、特定したエントリーのコメントが含まれます。 たとえば、以下のようなテンプレートを使うことができます。
<p><font class="title"><$MTEntryTitle$></font></p> <$MTEntryBody$> <MTComments> <$MTCommentBody$> <font class="post">Posted by <$MTCommentAuthorLink$>.</font><br><br> </MTComments>
実際、デフォルトの「エントリー・アーカイブ」には同じ構造が含まれます。
アーカイブの1ページに2つ以上のエントリーを持つような種類のアーカイブを使う場合、コメントをインラインにするのはあまり意味がありません。 そのような場合のために、Movable Typeでは動的に生成されるコメント用ポップアップ・ウィンドウを利用できます((à la Blog Voicesなど)。 Movable Typeが搭載しているデフォルト・テンプレートは、ポップアップ・コメントを自動的に利用します。これはコメント・リストのテンプレートの以下のような記述によるものです。
<MTComments> <$MTCommentBody$> <font class="post">Posted by <$MTCommentAuthorLink$>.</font><br><br> </MTComments>
以下のJavaScript関数を使って、コメント・ポップアップ・ウィンドウを開きます。
<script type="text/javascript"> <!-- function OpenComments (c) { window.open(c, 'comments', 'width=480,height=480,scrollbars=yes,status=yes'); }//--> </script>
以下のコードを使ってJavaScript関数を呼び出します。
<MTEntryIfAllowComments> <a href="<$MTCGIPath$><$MTCommentScript$>?entry_id=<$MTEntryID$>" onclick="OpenComments(this.href); return false">Comments (<$MTEntryCommentCount$>)</a> </MTEntryIfAllowComments>
もちろん、どちらの場合でも、ユーザーに新しいコメントを入力するためのフォームを提供したいでしょう。 以下はそうしたフォームの一例です。
<form method="post" action="<$MTCGIPath$><$MTCommentScript$>"> <input type="hidden" name="entry_id" value="<$MTEntryID$>"> 名前: <input name="author"><p> メールアドレス: <input name="email"><p> URL: <input name="url"><p> 本文: <textarea name="text" rows="10" cols="50"></textarea><p> <input type="submit" name="preview" value="PREVIEW"> <input type="submit" name="post" value="POST"> </form>
スタティック/インライン・コメントを使う場合は、上のサンプル・フォームに”hidden”(隠れた)インプット用フィールドを1つ以上加える必要があります。
<input type="hidden" name="static" value="1">
このコードはインライン・コメントを使っているときに使うものです。新しいコメントが投稿された後、コメント・システムは、ブログのエントリー・アーカイブおよびインデックス・ページを強制的に再構築します。
インライン・コメントまたはポップアップ・コメントのどちらを使う場合も、新しいコメントが追加されるとインデックス・ページは再構築されます。これはエントリーのコメント数のカウントを更新するためです(「テンプレートのタグ」の「 MTEntryCommentCount タグ」を参照)。 インライン・コメントを使うと、エントリーのアーカイブ・ページが再構築されます。これは新しいコメントをエントリー別のエントリー・アーカイブ・ページに加えるためです。
Movable Typeにはコメントの確認(プレビュー)機能が搭載されており、これを利用してサイトの訪問者は投稿する前にコメントを確認することができます。 確認機能は、システム標準のデフォルト・テンプレートにより変更できます。この機能を削除したい場合は、コメント・フォームから「 確認 」ボタンを削除します。 コメントの確認のレイアウトは「 コメント・プレビュー 」を使って定義します。 <$MTCommentPreview*$> タグをグローバル・タグ属性の encode_html と共に使うと、編集可能なコメント確認のフォームを作成することができます。このフォームを使うと、ユーザーは、コメントの確認と編集をしてから、コメントを投稿できます。 デフォルト・テンプレートの中に編集可能なコメント確認のテンプレート例があります。
編集可能なコメント確認のテンプレートを作成するときには、常に次の“hidden”(隠れた)インプット用フィールドを「 コメント・プレビュー 」と「 コメント・エラー のテンプレート」に貼り付けてください。
<input type="hidden" name="static" value="<$MTCommentPreviewIsStatic$>">
これは、ユーザーがコメントを個別のアーカイブから投稿しているか、コメント・ポップアップ・ウィンドウから投稿しているかをシステムに告げる魔法のようなタグで、コメントの投稿後、投稿ユーザーを対応するページに導きます。
標準の<MTComments>コンテナ・タグを使うと、エントリーに投稿された今までのコメントをすべて一覧表示できます。
Previous comments: <MTComments> <$MTCommentBody$> Posted by <$MTCommentAuthorLink$> at <$MTCommentDate$> </MTComments>
コメントの投稿時にエラーが生じることがあります。たとえば、匿名のコメントを承認しない設定で、ユーザーが名前やメールアドレスを提供しなかった場合などです。こうしたエラーの発生時に表示されるエラー・ページは、「 コメント・エラーのテンプレート 」を使うとカスタマイズできます。 このテンプレートを使うと、コメント投稿時のエラーをユーザー自身が修正してコメントを再投稿(もしくは確認)できるフォームを提供できます。 デフォルト・テンプレートの中には、「 コメント・エラーのテンプレート 」の一例があります(「http://www.movabletype.jp/default_templates.shtml」)。
コメントは、ブログの左側のメニューにある「コメント」ボタンをクリックして管理します。 この画面にはブログのコメントが日付順にすべて表示されており、1ページずつ表示することができます。 各コメントの横には、登録されたコメント投稿者(コメント投稿者)による投稿かどうか、そして登録されたコメント投稿者の場合は、コメント投稿者の状態を示すマークが付いています。 未登録のコメント投稿者による投稿の場合、マークはコメントが承認待ちかどうかを示します。
この画面ではまた、コメント投稿者の承認・拒否、および事前確認されるコメントの承認・拒否を指定できます。 この機能は、「ブログの設定」で「未登録者からのコメントを受け入れる」または「未登録者からのコメントを事前承認する」をオンにしている場合に役立ちます。
この画面では、各コメントの横にあるチェックボックスをチェックして、画面下部の「削除」ボタンをクリックすると、チェックされたコメントを削除できます。
登録者のコメントだけを許可するサイトでは、新しいコメント投稿者が初めてコメントを投稿するとき、そのコメント投稿者の承認を指定できるオプションがあります。 コメント投稿者が承認されるまで、そのコメント投稿者のコメントはブログに表示されませんが、承認後は直ちに表示されます。 このオプションを利用すると、あなたは個々のコメントを管理することなく、サイトに投稿してくる人々のコミュニティを管理できます。
コメント・リストの画面には、新しく登録したコメント投稿者の横に色付きのボタンがあります。これを使うと、「ユーザー承認」か「停止」のどちらかを選択できます。 承認すると、そのコメント投稿者の現在までのコメントがすべてブログに表示され、以降のコメントも直ちに表示されるようになります。 停止すると、そのコメント投稿者の現在までのコメントはブログから削除され、将来のコメントも表示されなくなります。
一度コメント投稿者を承認または停止しても、後からそのコメント投稿者のステータスを変更できます。 コメント・リストの画面に戻ると、コメント投稿者の名前の横にボタンが表示されています。これを利用すると、そのコメント投稿者の将来のコメントを承認または停止できます。 ユーザーがいったん承認または停止されると、それ以降に「承認」または「停止」と指定しても現在までのコメントには影響しません。影響するのは、将来、投稿されるコメントに対してだけです。
登録されたコメント投稿者はブログの「コメント投稿者」エリアにも一覧表示されています。 この画面では、たとえコメント投稿者からのコメントがない場合でも、常にそのコメント投稿者を承認または停止できます。
未登録者からのコメントを受け付ける設定にしている場合でも、投稿されるコメントは管理したいときがあるでしょう。 コメントの事前確認をオンにすると、あなたがコメントを承認するまで、そのコメントはサイトに表示されません。
事前確認の対象となるコメントを確認するには、「コメント」画面に行き、承認するコメントの横にある「コメントを掲載する」ボタンをクリックします。
登録ユーザーのコメントを受け入れるには、「ブログの設定」の「設定」にアクセスし、「登録されたコメント投稿者のコメントは許可する」チェックボックスを選択します。 すると、このチェックボックスに属する別のチェックボックスと入力フィールドが表示されます。
そのとき表示されるフィールドには、TypeKeyトークンの挿入が必要です。 無料のTypeKeyアカウントに登録するには、TypeKeyのウェブサイト、www.typekey.comにアクセスします。 トークンは20文字から成る文字列で、TypeKey認証サービスが割り振るあなたのブログのIDになります。 そのほか、TypeKeyにあなたのブログのURLを通知する必要があります そのためにはTypeKeyアカウントにログインし、画面の指示に従ってください。
ほかのコメント登録オプションについての詳細は、「コメント登録の設定」を参照してください。