如何在主页上显示Disqus评论系统

5
我在WordPress上使用Disqus插件时遇到了问题。如何在主页上显示Disqus,使单个页面成为主页,可能就像这样。有什么解决方法吗?
谢谢。
4个回答

5
我也无法让 Disqus 在主页上运行。可以通过设置以下变量来强制出现 comments_template: $withcomments = 1;
这将使 comments.php 模板出现,但 disqus 插件只在其他页面上起作用,似乎是插件本身防止它在 is_home() 时启动,而不是监听 wp $withcomments 变量。
更新:可以通过对 disqus.php 的插件 hack 来解决:
在函数 dsq_comments_template 中更改条件 if(!(is_singular() && ( have_comments() || 'open' == $post->comment_status ))
在我需要它在 home 和自定义分类目录 'issue' 的聚合页面上工作的情况下,我执行了以下操作:
在 global $comments; 后创建一个复杂条件的变量(它可以放在 if 中) $pass = (is_home() || is_taxonomy('issue')) || (is_singular() && ( have_comments() || 'open' == $post->comment_status ));
if(!$pass) { return }
... 函数的其余部分 ...
如果开发者为这种情况提供一个选项就太好了。

1
谢谢!disqus.php 的路径是 wp/wp-content/plugins/disqus-comment-system/disqus.php - Sawny

1

我发现这个方案非常有效,但是

if(!$pass) { return }

页面出现问题,我进行了替换

    if ( !( is_singular() && ( have_comments() || 'open' == $post->comment_status ) ) ) {
    return;
}

    if ($pass = (is_home() || is_taxonomy('issue')) || (is_singular() && ( have_comments() || 'open' == $post->comment_status ))) {
}

省略 if(!pass){return}

不确定为什么


1

不确定您的意思。任何评论插件通常都会替换您当前的评论模板并放置他们自己的评论系统。因此,请确保您的comments_template();放置在正确的位置。

请发送您问题的详细信息。


好的,抱歉,我的问题是如何在主页上显示 Disqus。因此,单个页面将成为主页,可能是这样的。当我在我的脚本中添加 comments_template(); 时,它可以显示我需要的评论,但不是 Disqus 评论,而只是标准评论。 - Nizamil Putra
嗯...看到了这个页面。真的很奇怪!你能发一下你用来制作这个页面的代码吗?也许我可以找到问题所在?你可以使用 http://pastebin.com/ 来分享代码。 - Sisir

1

有一个 Disqus教程 ,提供逐步指导来制作CMS。这对您的安装有帮助吗?

不过,“不是Disqus评论而是标准评论”这句话我不太明白。您能解释一下吗?


我已经安装了 Disqus。但是我想在主页上显示,所以我想把 single.php 当作主页。但是当我在我的脚本中添加 comments_template(); 时,它会显示来自 wp 的标准评论模板。你可以在这里看到它 http://prntscr.com/1q3zo。顶部是 Disqus 评论,底部是标准评论(这就是我的意思)。 - Nizamil Putra

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接