コメントをスレッド表示したくてプラグインを探したところ、MTThreadedCommentsを見つけた。
ソースカスタマイズ、データベーステーブルの変更を行うので、自身のある人だけにした方が良いです。
MTThreadedComments のインストール
- MTThreadedComments.pl を MT plugins にダウンロードします。
# wget http://akosut.com/software/download/MTThreadedComments.pl
- ソースにパッチを当てるんですが、説明はバージョン2.6なので3.121-jaとは異なっています。3.121-ja の場合は下記の通りです。
MTインストール先/lib/MT/Comment.pm
MTインストール先/lib/MT/App/Comments.pm
- データベースのテーブルを拡張します。
mysql> use MT_DATABASE_NAME;
Database changed
mysql> alter table mt_comment add column comment_subject text;
Query OK, 0 rows affected (0.39 sec)
Records: 0 Duplicates: 0 Warnings: 0mysql> alter table mt_comment add column comment_parent_id integer;
Query OK, 0 rows affected (0.24 sec)
Records: 0 Duplicates: 0 Warnings: 0mysql> alter table mt_comment add index comment_parent_id(comment_parent_id);
Query OK, 0 rows affected (0.24 sec)
Records: 0 Duplicates: 0 Warnings: 0
以上でインストールは完了しました。
テンプレートの修正
プラグイン作者によると、コメントの入力フローを変更する必要があると言っています。
- 個別エントリーアーカイブにはコメント入力フォームは表示せず、入力フォームを開く為のリンクを表示する。
- コメント・リストのテンプレート(Comment Listing Template)をコメント入力フォームとして、コメントを入力する対象となったエントリー又はコメントを表示する。
だそうです。
では、修正します。
※ ここでは、コメント部のレイアウト変更を適用されていることを前提としています。
テストコメント。
階層1
コメントテスト2
階層1
コメントテスト3
階層2
コメントテスト4
階層3