如何通过视图和使用JS实现评论回复表单?


9

我们有一个使用视图的评论正文,其中有每个发布评论的名称,评论,图片和日期。在所有评论的末尾,我们都有一个评论主体,可以在其中添加评论。

现在,这对于线性注释系统非常有用,但是我们需要一个线程化系统。在视图中,我可以添加回复评论链接,但这会将我带到新页面。

我想要的是基于JavaScript的操作,例如,当单击“答复”按钮时,注释表单位于答复链接下方。通过视图可以做到吗?

如果没有,我最好的选择是什么?

更新

我启用了一个名为ajax注释的模块。这对于默认的drupal注释系统非常有效,但对于视图则不是那么有效。我添加了必需的类,并使基本功能正常工作,但是直到刷新页面后,新添加的注释才出现。该消息(排队等待)也在页面底部。

如果有人成功通过视图设置了此模块,请告诉我。

Answers:



0

您可以将表单呈现在视图的模板文件中。您可以在视图中包含此代码-view-YOUR_VIEW_NAME.tpl

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

print render($build);

0

我只想在您的更新部分中添加一些内容,也许会对您有所帮助。

如果能够出现在消息波纹管可以使用的自定义模板把它comment-wrapper.tpl.php和没有刷新整个页面,您可以刷新显示邮件<div>的回复submit/save使用drupal_add_js


谢谢,这是您的第一个答案吗?:-)我们正在寻求做完全一样的事情,而是在灯箱中打开。对Drupal并没有冒犯,但是wordpress处理4件事比Drupal好得多,开箱即用主要是所见即所得,订阅,媒体和评论。尽管带有最新补丁的CKEditor和Media都好得多!
Pratik Bothra


0

普拉蒂克

AJAX注释与默认设置一起使用是一个好主意,但是对其进行任何修改实际上可能会导致事情中断。当我工作时,它甚至没有提供任何hook()来进行数据修改。

最好以自定义的方式执行此操作,这可以根据需要轻松且灵活得多。


“ Ajax评论”是如此之多,以至于我们不得不放弃。我不敢相信Drupal在默认情况下没有一个可爱的评论系统-答复会将您带到一个单独的页面,而不是ajax / js功能。我觉得如果可以的话,我应该为D8做出贡献。我们通常使用Disqus,但是客户坚持不使用Disqus,因此我们必须采用这种方法。现在,我们只是在框架中,在灯箱中打开回复。
Pratik Bothra

0

只需将Comment:线程‪(asc)‬添加到您的排序条件即可。它将同一线程的所有注释保持在一起

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.