MNPZ.BLOG

コメントのスレッド表示

コメントをスレッド表示したくてプラグインを探したところ、MTThreadedCommentsを見つけた。
ソースカスタマイズ、データベーステーブルの変更を行うので、自身のある人だけにした方が良いです。

MTThreadedComments のインストール

  1. MTThreadedComments.pl を MT plugins にダウンロードします。

    # wget http://akosut.com/software/download/MTThreadedComments.pl

  2. ソースにパッチを当てるんですが、説明はバージョン2.6なので3.121-jaとは異なっています。3.121-ja の場合は下記の通りです。

    MTインストール先/lib/MT/Comment.pm

    MTインストール先/lib/MT/App/Comments.pm

  3. データベースのテーブルを拡張します。

    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: 0

    mysql> alter table mt_comment add column comment_parent_id integer;
    Query OK, 0 rows affected (0.24 sec)
    Records: 0 Duplicates: 0 Warnings: 0

    mysql> 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

以上でインストールは完了しました。

テンプレートの修正

プラグイン作者によると、コメントの入力フローを変更する必要があると言っています。

だそうです。
では、修正します。
※ ここでは、コメント部のレイアウト変更を適用されていることを前提としています。

  1. Nested Comments テンプレート追加
    [テンプレート・モジュール]-[新しいテンプレート・モジュールを作る]にてスレッド表示用のコメントテンプレートを追加します。名前は、Nested Comments とします。



    Posted by:
    on

    |


  • 個別エントリーアーカイブの修正
    <MTComments>タグ内を下記のように変更します。



    コメント入力部(<MTEntryIfCommentsOpen>タグ内)を下記のように変更します。


    Posted by
    at




    Posted by
    at



    <MTComments>タグに属性として lastn=”1″ を追加する。

  • Comment Fields List テンプレートの修正
    コメントを入力する為のTEXTAREAの直前に下記内容を追加する。

  • Comment Fields Previewテンプレートの修正
    コメントを入力する為のTEXTAREAの直前に下記内容を追加する。

  • スタイルシートテンプレートの修正
    下記内容を追記します。

  • 以上で完了です。
    ちゃんと表示されるかテストしてください。

    関連記事: