Movable Type 4 βレビュー(その6・コメント関連)

Movable Type 4では、コメント関連の機能も強化されています。
今日はこれについてレビューします。

1.各種の認証機能に対応

これまでのMovable Typeでは、独自の認証機能として「TypeKey」がありました。
TypeKeyでログインしているかどうかで、コメントを即時公開するかどうかを分けるといったことができます。

Movable Type 4では、TypeKeyに加えて、以下の認証にも対応しています。

  • Movable Type独自(TypeKeyとは別)
  • OpenID
  • VOX
  • LiveJournal

↓コメント投稿時のログイン画面
コメント投稿時のログイン画面

たとえば、VOXのアカウントを持っている人なら、そのアカウントでログインしてコメントすることができます。

2.Captcha機能

コメントスパムを避ける方法の1つとして、画像でコードを表示して、そのコードを入力させるものがあります(Captcha)。
これまでも、プラグインでCaptcha機能を実現することができました。

Movable Type 4では、Captcha機能を標準で装備しています。
ログインしていないユーザーがコメントしようとした場合、Captchaを働かせることができます。

↓Captcha機能
Captcha機能

3.コメントに対する返信

従来のMovable Typeでは、コメントとそれに対する返信は、区別されていませんでした。
一方、Movable Type 4では、管理画面の中で、コメントに対して返信を行う機能があります。
管理者だけでなく、管理者が承認した他のユーザーも、管理画面にログインして返信を行うことができます。

↓コメントに返信する例
コメントに返信する例

また、返信機能に関連して、以下のようなテンプレート・タグが追加されています。

テンプレート・タグ種類内容
MTCommentRepliesコンテナコメントへの返信を順に出力する
MTCommentParentコンテナ返信先のコメントを出力する
MTCommentRepliesRecurse変数返信を再帰的に出力する
MTIfCommentReplies条件コメントに返信があるかどうかを判断する
MTIfCommentParent条件返信先のコメントがあるかどうかを判断する

たとえば、以下のようにタグを組むと、コメントとその返信を行った人を、ツリー表示することができます。

<MTComments>
<MTCommentsHeader><ul></MTCommentsHeader>
<MTIfCommentParent>
<MTElse>
  <li>
    <MTCommentAuthor>
    <MTIfCommentReplies>
    <MTCommentReplies>
      <MTCommentsHeader><ul></MTCommentsHeader>
      <li>
        <MTCommentAuthor>
        <MTCommentRepliesRecurse>
      </li>
      <MTCommentsFooter></ul></MTCommentsFooter>
    </MTCommentReplies>
    </MTIfCommentReplies>
  </li>
</MTIfCommentParent>
<MTCommentsFooter><ul></MTCommentsFooter>
</MTComments>

返信機能を使えば、一般的な掲示板のようなシステムを作ることもできそうです。