diff --git a/tagclouds.module b/tagclouds.module
index d9bcd85..963936f 100644
--- a/tagclouds.module
+++ b/tagclouds.module
@@ -81,6 +81,12 @@ function tagclouds_settings() {
     '#default_value' => variable_get('tagclouds_display_type', 'style'),
     '#description' => t('Determines the style of the page.'),
   );
+  $form['tagclouds_display_node_link'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Link term to node when only one content is tagged'),
+    '#default_value' => variable_get('tagclouds_display_node_link'),
+    '#description' => t('When there is only one content tagged with a certain term, link that term to this node instead of the term list page.'),
+  );
   $form['tagclouds_page_amount'] = array(
     '#type' => 'textfield',
     '#size' => 5,
@@ -336,12 +342,14 @@ function theme_tagclouds_weighted(array $vars) {
   }
   else {
     foreach ($terms as $term) {
-      if ($term->count==1) {
-         $output .= tagclouds_display_node_link_count($term->name, $term->nid, $term->count, $term->description);
+      $output .= "<span class='tagclouds-term'>";
+      if ($term->count==1 && variable_get("tagclouds_display_node_link")) {
+         $output .= tagclouds_display_node_link_count($term->name, $term->tid, $term->nid, $term->count, $term->description);
       }
       else {
          $output .= tagclouds_display_term_link_count($term->name, $term->tid, $term->count, $term->description);
       }
+      $output .= " (" . $term->count . ")" . "</span>\n";
     }
   }
   return $output;
@@ -366,10 +374,9 @@ function tagclouds_display_term_link_weight($name, $tid, $weight, $description)
  * Display Single Tag with Style
  * 
  */
-function tagclouds_display_node_link_count($name, $nid, $count, $description) {
-  $node_info = entity_get_info('taxonomy_term');
-  if ($node = $node_info['load hook']($nid)) {
-    $uri = $node_info['uri callback']($node);
+function tagclouds_display_node_link_count($name, $tid, $nid, $count, $description) {
+  if ($term = taxonomy_term_load($tid) && $node = node_load($nid)) {
+    $uri = entity_uri('node', $node);
     $uri['options']['attributes']['class'][] = 'tagclouds';
     $uri['options']['attributes']['rel'] = 'tag';
     $uri['options']['attributes']['title'] = $description;
