4

我正在尝试从我的漫画网站上的漫画中获取评论数。例如,漫画 id 66 有 2 条评论。我想获得该计数并将其显示在另一页上。到目前为止,当我按照下面的 disqus 指南进行操作时,它给了我一个带有评论的漫画链接,但没有给我全部评论。

DISQUS 说……

附加#disqus_threadhref链接中的属性。这将告诉 Disqus 查找哪些链接并返回评论计数。例如:<a href="http://foo.com/bar.html#disqus_thread">Link</a>


但是,如果我的 URL 字符串是这样的,我将如何获得该计数:

<a href=".?action=viewimage&site=comics&id=66">Link</a>

所以我的问题是:

  • 我会在哪里追加#disqus_thread

  • 如何从该漫画 URL 获取评论数并将这些总评论显示在另一页上?

4

4 回答 4

4

此处示例:http: //help.disqus.com/customer/portal/articles/1131783-tutorial-get-comment-counts-with-the-api

变量

<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
  var disqusPublicKey = "YOUR_PUBLIC_KEY";
  var disqusShortname = "thenextweb"; // Replace with your own shortname

  var urlArray = [];
});
</script>

var urlArray = [];
//...continued from above

$('.count-comments').each(function () {
  var url = $(this).attr('data-disqus-url');
  urlArray.push('link:' + url);
});

发出 API 请求

$('#get-counts-button').click(function () {
  $.ajax({
    type: 'GET',
    url: "https://disqus.com/api/3.0/threads/set.jsonp",
    data: { api_key: disqusPublicKey, forum : disqusShortname, thread : urlArray },
    cache: false,
    dataType: 'jsonp',
    success: function (result) {

      for (var i in result.response) {

        var countText = " comments";
        var count = result.response[i].posts;

        if (count == 1)
          countText = " comment";

        $('div[data-disqus-url="' + result.response[i].link + '"]').html('<h4>' + count + countText + '</h4>');

      }
    }
  });
});
于 2014-01-13T16:30:42.103 回答
3

虽然这是一个旧线程,但似乎没有接受任何答案,所以会添加我的想法,以防它帮助其他人。

在您的 function.php 中添加以下内容:

function disqus_count($disqus_shortname) {
    wp_enqueue_script('disqus_count','http://'.$disqus_shortname.'.disqus.com/count.js');
    echo '<a href="'. get_permalink() .'#disqus_thread"></a>';
}

然后在您希望评论计数出现的任何页面上添加以下内容:

<?php disqus_count('myshortcode'); ?>

确保将其添加到“循环”中,并将 myexampleblog 替换为您的 disqus 帐户短名称。同样在您的 Disqus 帐户中,您可以看到要使用的措辞,例如“0 条评论”、“1 条评论”、“3 条评论”等。

于 2013-11-02T16:01:55.603 回答
2

如果您在该页面上启用了 Disqus 评论,那么您只需要一个指向该页面的链接,例如

<a href=".?action=viewimage&site=comics&id=66">Link</a>

然后你修改#disqus_thread

像这样<a href=".?action=viewimage&site=comics&id=66#disqus_thread">Link</a>

它让你链接到的 javascript 检查链接页面的评论计数,#disqus_thread然后它下面的评论会覆盖你在下面创建的链接

<a href=".?action=viewimage&site=comics&id=66#disqus_thread">Link</a>

有类似的东西1 Comment

于 2013-04-30T13:00:05.460 回答
0

我遇到了这个问题,而且很烦人这么久,我终于用这个简单的代码解决了这个问题,我希望在其中显示注释以强制将#disqus_thread 附加到末尾:

<a href="<?php the_permalink() ?>#disqus_thread">Comments</a>
于 2014-05-07T09:14:21.400 回答