Kommentare auf Tumblr mit der Disqus API themen

Wer sich mit dem Theming von Tumblr beschäftigt, kommt eigentlich um Disqus nicht herum. Darum habe ich das Wochenende genutzt und habe mich während einiger Zugfahrten durch die Schleswig-Holsteinische Pampa mit der Disqus-Api beschäftigt (soweit es die wackelige UMTS-Verbindung zuließ).

Mein Lernziel: Ich möchte für mein Tumblrtheme “Tumbletouch” nicht nur die Reaktionen von Tumblrusern auf meine Blogbeiträge zählen, sondern auch die Kommentare bei Disqus.

Bisher sieht mein Code im Theme sieht bisher so aus:

{Notecount} ist eine von Tumblr vorgegebene Variable und soll um die Anzahl der Disquskommentare ergänzt werden.

Gestartet bin ich im Wiki zur Disqus-API unter http://wiki.disqus.net/API. Dort gibt die erste relevanten Infos zur API:

There are two different kinds of API keys. First is the User Key. Every Disqus account has a User Key; it is used to perform actions associated with that account. When you are logged in, you can get yours here. Keep this key private. The second kind of key is the Forum Key. Every Disqus forum has a Forum Key. It can be shared among trusted moderators of a forum, and is used to perform actions associated with that forum. The creator of a forum can get the forum’s key through the API.

Also Notizblock auf und erstmal die wichtigen Daten zusammentragen.

user_api_key= ABC

Außerdem benötige ich die folgenden Methoden um die Anzahl der Kommentare zu einem bestimmten Blogbeitrag anzeigen zu können:

  • get_forum_list
  • get_forum_api_key
  • get_thread_by_url

Im Folgenden beschreibe ich kurz mein Vorgehen mit der jeweiligen Methode und zeige den Inhalt der JSON-Datei, die man als Antwort erhält. Die URLs können einfach in die URL-Zeile des Browser eingegeben werden…

get_forum_list

http://disqus.com/api/get_forum_list?user_api_key=ABC

ANTWORT (JSON):

{“message”: [{“created_at”: “2009-07-03 08:55:40.989258”, “shortname”: “jonastumblog”, “id”: “EFG”, “name”: “Jonas Tumblog”}], “code”: “ok”, “succeeded”: true}

Da ich Disqus bisher nur auch einer Seite verwende, gibt es in der Antwort auch nur einen Eintrag

Die Variable forum_id für mein Blog “Jonas Tumblog” ist dem Eintrag “id”: “EFG” zu entnehmen

get_forum_api_key

http://disqus.com/api/get_forum_api_key?user_api_key=ABC&forum_id=EFG

ANTWORT (JSON):

{“message”: “XYZ”, “code”: “ok”, “succeeded”: true}

get_thread_by_url


http://disqus.com/api/get_thread_by_url?forum_api_key=XYZ&url=http://jonas28.tumblr.com/post/137747450

Jetzt benötigt man die URL eines Artikels. Ich wähle dafür meinen Artikel “Auf der Suche nach der eierlegenden Wollmilchsau?” Dieser ist unter der der folgenden URL zu finden: http://jonas28.tumblr.com/post/137747450/pleetup. Ich habe allerdindigs festgestellt, dass man für die Übergabe in der Methode die URL nur bis zur Post-ID verwenden sollte, also folgendermaßen: http://jonas28.tumblr.com/post/137747450/

http://disqus.com/api/get_thread_by_url?forum_api_key=XYZ&url=http://jonas28.tumblr.com/post/137747450

ANTWORT (JSON):

{“message”: {“allow_comments”: true, “forum”: “ABC”, “title”: “Auf der Suche nach der eierlegenden Wollmilchsau?”, “url”: “http://jonas28.tumblr.com/post/137747450”, “num_comments”: 5, “created_at”: “2009-07-08T14:03”, “forum_obj”: {“created_at”: “2009-07-03 08:55:40.989258”, “shortname”: “jonastumblog”, “id”: “EFG”, “name”: “Jonas Tumblog”}, “slug”: “auf_der_suche_nach_der_eierlegenden_wollmilchsau”, “hidden”: false, “identifier”: null, “id”: “24658383”}, “code”: “ok”, “succeeded”: true}

Und schon habe ich die Information, die ich benötige: “num_comments”: 5 entspricht den Kommentaren auf Disqus zu meinen Blogartikel.

Jetzt benötit man nur noch ein bischen Javascript um die oben angeführten Abfragen aus dem Theme heraus zu starten…

Kommentare auf Tumblr mit der Disqus API themen

Wer sich mit dem Theming von Tumblr beschäftigt, kommt eigentlich um Disqus nicht herum. Darum habe ich das Wochenende genutzt und habe mich während einiger Zugfahrten durch die Schleswig-Holsteinische Pampa mit der Disqus-Api beschäftigt (soweit es die wackelige UMTS-Verbindung zuließ).

Mein Lernziel: Ich möchte für mein Tumblrtheme “Tumbletouch” nicht nur die Reaktionen von Tumblrusern auf meine Blogbeiträge zählen, sondern auch die Kommentare bei Disqus.

Bisher sieht mein Code im Theme sieht bisher so aus:

{Notecount} ist eine von Tumblr vorgegebene Variable und soll um die Anzahl der Disquskommentare ergänzt werden.

Gestartet bin ich im Wiki zur Disqus-API unter http://wiki.disqus.net/API. Dort gibt die erste relevanten Infos zur API:

There are two different kinds of API keys. First is the User Key. Every Disqus account has a User Key; it is used to perform actions associated with that account. When you are logged in, you can get yours here. Keep this key private. The second kind of key is the Forum Key. Every Disqus forum has a Forum Key. It can be shared among trusted moderators of a forum, and is used to perform actions associated with that forum. The creator of a forum can get the forum’s key through the API.

Also Notizblock auf und erstmal die wichtigen Daten zusammentragen.

user_api_key= ABC

Außerdem benötige ich die folgenden Methoden um die Anzahl der Kommentare zu einem bestimmten Blogbeitrag anzeigen zu können:

  • get_forum_list
  • get_forum_api_key
  • get_thread_by_url

Im Folgenden beschreibe ich kurz mein Vorgehen mit der jeweiligen Methode und zeige den Inhalt der JSON-Datei, die man als Antwort erhält. Die URLs können einfach in die URL-Zeile des Browser eingegeben werden…

get_forum_list

http://disqus.com/api/get_forum_list?user_api_key=ABC

ANTWORT (JSON):

{“message”: [{“created_at”: “2009-07-03 08:55:40.989258”, “shortname”: “jonastumblog”, “id”: “EFG”, “name”: “Jonas Tumblog”}], “code”: “ok”, “succeeded”: true}

Da ich Disqus bisher nur auch einer Seite verwende, gibt es in der Antwort auch nur einen Eintrag

Die Variable forum_id für mein Blog “Jonas Tumblog” ist dem Eintrag “id”: “EFG” zu entnehmen

get_forum_api_key

http://disqus.com/api/get_forum_api_key?user_api_key=ABC&forum_id=EFG

ANTWORT (JSON):

{“message”: “XYZ”, “code”: “ok”, “succeeded”: true}

get_thread_by_url


http://disqus.com/api/get_thread_by_url?forum_api_key=XYZ&url=http://jonas28.tumblr.com/post/137747450

Jetzt benötigt man die URL eines Artikels. Ich wähle dafür meinen Artikel “Auf der Suche nach der eierlegenden Wollmilchsau?” Dieser ist unter der der folgenden URL zu finden: http://jonas28.tumblr.com/post/137747450/pleetup. Ich habe allerdindigs festgestellt, dass man für die Übergabe in der Methode die URL nur bis zur Post-ID verwenden sollte, also folgendermaßen: http://jonas28.tumblr.com/post/137747450/

http://disqus.com/api/get_thread_by_url?forum_api_key=XYZ&url=http://jonas28.tumblr.com/post/137747450

ANTWORT (JSON):

{“message”: {“allow_comments”: true, “forum”: “ABC”, “title”: “Auf der Suche nach der eierlegenden Wollmilchsau?”, “url”: “http://jonas28.tumblr.com/post/137747450”, “num_comments”: 5, “created_at”: “2009-07-08T14:03”, “forum_obj”: {“created_at”: “2009-07-03 08:55:40.989258”, “shortname”: “jonastumblog”, “id”: “EFG”, “name”: “Jonas Tumblog”}, “slug”: “auf_der_suche_nach_der_eierlegenden_wollmilchsau”, “hidden”: false, “identifier”: null, “id”: “24658383”}, “code”: “ok”, “succeeded”: true}

Und schon habe ich die Information, die ich benötige: “num_comments”: 5 entspricht den Kommentaren auf Disqus zu meinen Blogartikel.

Jetzt benötit man nur noch ein bischen Javascript um die oben angeführten Abfragen aus dem Theme heraus zu starten…

Posted 2 years ago & Filed under API, disqus, tumblr,

About:

selbstständiger, studierender, bloggender, webzweinulliger drupalist und digital native mit Migrationshintergrund

Following: