Update 11/3/2014:
We now have a method for using comment counts on any element you want. The regular count.js skrypt będzie teraz działać, jeśli:
- Użyj
disqus-comment-count
klasa I
- Użyj
data-disqus-url
LUB data-disqus-identifier
atrybut
Więc teraz albo z te elementy będą pracować:
<span class="disqus-comment-count" data-disqus-url="http://example.com/path-to-thread/"> <!-- Count will be inserted here --> </span>
i
<span class="disqus-comment-count" data-disqus-identifier="your_disqus_identifier"> <!-- Count will be inserted here --> </span>
Old Odpowiedź (nie rób tego więcej)
Skrypt count.js jest dość sztywne, jeśli chodzi o rodzaje tagów jej szukają (musi być znacznik a
), więc aby to osiągnąć, musisz użyć interfejsu API.
To wywołanie API zwraca tablicę danych wątek (szukasz do „Wiadomości” Integer) dla dowolnej liczby wątków, które należy podać: http://disqus.com/api/docs/threads/set/
powodu ograniczenia API będziesz idealnie uruchomić ten serwer -side i pamięć podręczną liczby, aby służyć klientom. Jednakże, chyba że masz bardzo obciążoną witrynę, robienie tego po stronie klienta jest zazwyczaj w porządku. Możesz wysłać e-mail do [email protected], jeśli potrzebujesz więcej niż 1000 zgłoszeń/godzinę dla swojej aplikacji.
EDIT
Oto krótki przykład tego, jak można to zrobić z jQuery. Zakłada się, że masz kilka pustych div że wyglądać tak:
<div class="my-class" data-disqus-url="http://example.com/some-url-that-matches-disqus_url/"></div>
le 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>');
}
}
});
});
Cheers Ryan. Uważam, że to bardzo dziwne, dlaczego ma to być oznaczenie A - wydaje mi się dużym niedopatrzeniem. Nasza strona ma dziś ok. 25-30 tys. Odwiedzających, więc tak, jest to bardzo duży ruch - który może umieścić ją w ponad 1000 zgłoszeń na godzinę? Wczoraj było 73 tys. Wyświetleń strony. – pixelkicks
Wyślij do nas e-mail na [email protected] - możemy zwiększyć limit, chcemy tylko upewnić się, że skontaktowaliśmy się, aby wszystko działało sprawnie :-) –
Witaj, Ryan, właśnie próbowaliśmy wysłać e-mail, ale dostaliśmy bounceback mówiąc, że nie mamy pozwolenia lub grupa Google nie istnieje? – pixelkicks