Building a tag cloud

This tutorial is in draft status still. Please add your improvements to the code!

 

This tutorial demonstrates one way that you can use DekiScript to build a customizable tag cloud for your Deki.

 

Cut to the chase!

Want to see the tag cloud in action?  Or, not interested in the step-by-step details?  Go to the demo page now »

 

What tags we'll be pulling

Before we get into the tutorial, it will be helpful to understand what tags we're expecting will appear in our tag cloud.  We've set up an example directory of pages and tagged them with random tags.  See the example directory here »

 

Let's dig in!

This tutorial is presented in five parts:

 

  • Part 1: The basic tag cloud
    Our first step will be to figure out how to use advanced DekiScript to assemble a crude tag cloud.
     
  • Part 2: Adding user options
    Next, we'll explore how we can add powerful user options to start making our tag cloud more flexible.
     
  • Part 3: Styling the tags
    Now, the fun part!  Using DekiScript, we can control the size and color of each entry in our tag cloud.
     
  • Part 4: Making final usability improvements
    Another reason why Deki is the best enterprise wiki -- because it puts information in context for your users.
     
  • Part 5: Putting the code into a template
    This part will be added in the future.
Tag page
Viewing 2 of 2 comments: view all
Great idea, but how do I create a cloud for all the tags in my entire site? I can't find how to use wiki.getsearch to return all documents.

I can search for all documents under any path by changing the query to something like 'path:example/*', but can't use that syntax for the root.

Similarly, I can return any set of documents with a query like 'Network*', but just '*' returns nothing.
Posted 11:55, 6 Jan 2009
Nevermind, I found a workaround for it. Documented it in this thread:
http://forums.developer.mindtouch.com/showthread.php?p=24479#post24479
Posted 16:30, 9 Jan 2009
Viewing 2 of 2 comments: view all
You must login to post a comment.