gpt4 book ai didi

disqus - 在 DIV 或 SPAN 中显示 Disqus 评论数 - 而不是

转载 作者:行者123 更新时间:2023-12-04 01:57:58 27 4
gpt4 key购买 nike

我们目前的 Disqus 评论计数显示在我们主页上的每个帖子上 <a href>标签,我们看到这是由一些 javascript 更新的,它检测链接上是否存在#disqus_thread。

我们如何在标签外显示评论数?

这可能吗?

我们对直接链接到评论不感兴趣,所以我们想删除链接并只显示计数。

最佳答案

2014 年 11 月 3 日更新:

我们现在有一种方法可以在您想要的任何元素上使用评论计数。常规count.js如果您执行以下操作,脚本现在可以运行:

  • 使用 disqus-comment-count类和
  • 使用 data-disqus-url或者 data-disqus-identifier属性

所以现在这些元素中的任何一个都可以工作:

<span class="disqus-comment-count" data-disqus-url="http://example.com/path-to-thread/"> <!-- Count will be inserted here --> </span>

<span class="disqus-comment-count" data-disqus-identifier="your_disqus_identifier"> <!-- Count will be inserted here --> </span>

旧答案(不要再这样做了)

count.js 脚本在涉及其查找的标签类型时相当不灵活(它必须是 a 标签),因此您需要使用 API 来完成此操作。

此 API 调用为您指定的任意数量的线程返回一个线程数据数组(您正在寻找“帖子”整数):http://disqus.com/api/docs/threads/set/

由于 API 限制,您最好在服务器端运行并缓存计数以服务于客户端。但是,除非您的站点非常繁忙,否则在客户端执行通常没问题。如果您的应用程序每小时需要超过 1000 个请求,您可以发送电子邮件至 developers@disqus.com。

编辑

这是一个简单的示例,说明如何使用 jQuery 执行此操作。这假设您有几个空的 div,如下所示:

<div class="my-class" data-disqus-url="http://example.com/some-url-that-matches-disqus_url/"></div>

javascript:

$(document).ready(function () {

var disqusPublicKey = "YOUR_PUBLIC_KEY";
var disqusShortname = "YOUR_SHORTNAME";
var urlArray = [];

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


$('#some-button').click(function () {
$.ajax({
type: 'GET',
url: "https://disqus.com/api/3.0/threads/set.jsonp",
data: { api_key: disqusPublicKey, forum : disqusShortname, thread : urlArray }, // URL method
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>');

}
}
});

});

关于disqus - 在 DIV 或 SPAN 中显示 Disqus 评论数 - 而不是 <a href>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19111953/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com