web-dev-qa-db-ja.com

ビューとJSを使用してコメント返信フォームを実装する方法

ビューを使用したコメント本文があり、投稿された各コメントの名前、コメント、写真、日付があります。すべてのコメントの最後に、コメントを追加できるコメント本文があります。

これは線形コメントシステムに最適ですが、スレッドシステムを配置する必要があります。ビューでは、返信コメントのリンクを追加できますが、新しいページに移動します。

私が欲しいのは、コメントボタンがクリックされたときにコメントフォームが返信リンクの下に来るようなJavaScriptベースのアクションです。これはビュー経由で可能ですか?

そうでない場合、私の最良の選択肢は何ですか?

[〜#〜]更新[〜#〜]

Ajaxコメントと呼ばれるモジュールを有効にしました。これはデフォルトのdrupalコメントシステムでうまく機能しますが、ビューではそれほどではありません。必要なクラスを追加し、基本的な機能を動作させましたが、新しく追加したコメントは更新するまで表示されませんまた、メッセージ(モデレートのためにキューに入れられています)はページの下部に表示されます。

誰かがこのモジュールをビューで正常に設定した場合は、お知らせください。

9
Pratik Bothra

インラインAjaxコメント を見たことはありますか?

1
user12342

プラティック、

デフォルト設定で AJAXコメント を使用することをお勧めしますが、これを変更すると、問題が発生する可能性があります。私が働いたとき、データ変更のためのhook()さえ提供していませんでした。

必要に応じてはるかに簡単で柔軟なカスタムの方法で行うことをお勧めします。

0
Vaibhav Jain

更新された部分に何かを追加したいのですが、それが役立つかもしれません。

以下のメッセージを表示できる場合は、comment-wrapper.tpl.phpのカスタムテンプレートを使用してメッセージを表示し、ページ全体を更新せずにメッセージを表示するには、返信時に<div>を更新できますsubmit/savedrupal_add_jsを使用します。

0
madhurjya

コメント:スレッド‪(asc)‬をソート基準に追加するだけです。同じスレッドのすべてのコメントをまとめて保持します

0
shekoufeh

ビューのテンプレートファイルでフォームをレンダリングできます。このコードをビューに含めることができます--view-YOUR_VIEW_NAME.tpl

$build = drupal_get_form("comment_node_{$node->type}_form", (object) array('nid' => $node->nid));

print render($build);
0

これを使用する場合、エンティティとしてコメントを作成し、エンティティのコレクションを作成する エンティティコレクション モジュールを使用すると、スレッド化されたコメントシステムを実行できます。

0
bhupendraosd