多説とDisqus記事のコメント数を取得する方法


多くのサイトでは、多説などの第三者コメントシステムを使用しており、特定の位置に対応する文章のコメント数を表示する必要がある場合があります.以下の方法では、多説やDisqusの文章コメント数を迅速に取得することができ、純粋な数字でレイアウトが容易になります.
たくさん話す
記事のコメント数を取得するためのインタフェースを提供していますが、必要なのは関連パラメータを記入してから、戻ってきたJSONデータからコメント数を抽出するだけです
要求パラメータ
  • short_name:サイト登録の多説二級ドメイン名、例えば登録したhttp://helloworld.duoshuo.com/、対応する2級ドメイン名はhelloworldである.
  • threads:記事のthread-keyは、コメントボックスのdata-thread-keyと一致します.

  • 戻りデータの例
    {
        "response": {
            "about/index.html": {
                "thread_id": "6205475504969401090",
                "channel_key": null,
                "thread_key": "about/index.html",
                "reposts": 0,
                "views": 0,
                "likes": 8,
                "dislikes": 0,
                "comments": 187
            }
        },
        "options": {
            "comments_zero": "    ",
            "comments_one": "1   ",
            "comments_multiple": "{num}   "
        },
        "code": 0
    }

    データ抽出
  • 必要なのはコメント数commentsだけで、ここではjQueryのgetJSONを使うと便利です
  • $(function() {
        var shortName = "moxfive";
        var threads = "about/index.html";
    
        var jsonUrl = "http://api.duoshuo.com/threads/counts.jsonp?short_name=" + shortName + "&threads=" + threads +  "&callback=?";
        $.getJSON(jsonUrl, function(result) {
            $.each(result.response, function(i, field) {
                var value = field.comments;
                $(".duoshuo-count").text(value);
            })
        })
    })
  • で得られた値は、一致する領域に
  • で表示されます.

    Disqus
    関連JSのロード
  • ドメイン名に自分のDisqus shortnameを記入し、入手方法は公式文書
  • を参照する.
    
    
    
    

    コメント の
  • ここでは、 のClassを いてコメント を する2つの
  • を する.
    
    
    
    
    
    
  • identifierurlの が な は、 で することができます. は、
  • を してください.
  • で したコメント が しくないのは、リモートデータが されていないためかもしれません.

  • の で すコメント は1 Commentのようなフォーマットであり、ここでは デジタルフォーマット1
  • に することができる.
  • jQueryバインドイベントを して、コメント が されたときに の を すると
  • になります.
    var $disqusCount = $(".disqus-comment-count");
    $disqusCount.bind("DOMNodeInserted", function(e) {
      var num = $(this).text().replace(/[^0-9]/ig,"");
      $(this).text(num)
    })

    リンク
  • : のコメントを し、
  • :コード 【 】
  • Disqus Help: Adding comment count links to your home page