Get a URL’s de.licio.us Count Using JavaScript

By  on  

When I put together my new theme, I made it a goal to integrate more of the social bookmarking websites. The benefit to me is that my articles and website will get more attention. The benefit to you is that you can save / bookmark / share my articles easier.

I've found the most useful bookmarking site to be de.licio.us. De.licio.us provides a very simple API which allows me access information about who has bookmarked my articles quickly. Here's how to pull the bookmark count for a specified URL.

The JavaScript

<script type="text/javascript">
//the callback -- what do we do with the json response?
function get_delicious_count(info) { 
	//get the number of saves
	var num = info[0].total_posts
	//if none, do nothing
	if(!num) return;
	//if some, I add the number to the end of my link, like at the top of every one of my article posts.
	return $('delic').set({ 
		'text': $('delic').get('text') + ' (' + num + ')',
		'title': num + ' people found this post delicious!'
	});
}
</script>


<script src='http://badges.del.icio.us/feeds/json/url/data?url=https://davidwalsh.name/delicious-url-count-javascript&callback=get_delicious_count'></script>

You need to place your function code before the second JavaScript tag which goes to de.licio.us to get the statistic information. Note that you need to provide the URL to check and a callback function which will handle the data.

When you receive the data, you can do whatever you want to format it. On this site, I get the count and append it to the "de.licio.us" link at the top of the article. How would you use this data?

Recent Features

  • By
    39 Shirts &#8211; Leaving Mozilla

    In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...

  • By
    CSS @supports

    Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn't been available within CSS.  What we end up doing is repeating the same properties multiple times with each browser prefix.  Yuck.  Another thing we...

Incredible Demos

  • By
    Using jQuery and MooTools Together

    There's yet another reason to master more than one JavaScript library: you can use some of them together! Since MooTools is prototype-based and jQuery is not, jQuery and MooTools may be used together on the same page. The XHTML and JavaScript jQuery is namespaced so the...

  • By
    Save Web Form Content Using Control + S

    We've all used word processing applications like Microsoft Word and if there's one thing they've taught you it's that you need to save every few seconds in anticipation of the inevitable crash. WordPress has mimicked this functionality within their WYSIWYG editor and I use it...

Discussion

  1. I love finding out new things about the numerous API’s bouncing around the social network sites. I actually only became aware that del.icio.us had an API recently, and you’ve pretty much explained the most useful method in full. Thanks mate, good post.

  2. Excellent post! Really need this for my blog.

  3. BTW, JSON is indeed an easy lightweight way to transfer data.

  4. <script src=’http://badges.del.icio.us/feeds/json/url/data?url=http://davidwalsh.name/&callback=get_delicious_count’>

    And you can use it on all pages without changing the code.

  5. erent7

    That’s really nice. I follow your articles with my patience day and day :=) Thank you

  6. Peter

    Thank you. I just pooped my pants reading this. Very good!

  7. @Binny V A: Change the url with : location.href.replace(/\?.*/,'');
    It works for me ;)

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!