WP-Cumulus 2.0 is finally in development (again)

I’ve been promising a new version of WP-Cumulus for a long time. I’ve tried working with more experienced PHP developers, but it’s been hard to find a really good one who’s able to devote time to the project. I still think a plugin like this should be a team effort, but for now I’m going to kick things back into motion again myself.

What’s ready at this point is a much cleaner rewrite of the plugin files, with the display logic in a neat little class that port authors will hopefully be able to reuse. I’ve also got a Flash movie that uses a user-defined system font, as a result is much smaller, and supports unicode tags.

Burning bridges

I’ve decided to bump the required WordPress version to 2.8 or 2.9. There’s so much code in the current version that’s there only to support older versions and adds nothing. Running older WP versions is a bad idea anyway, and I want to use the new widget and option page APIs.

Another thing I consider a bad idea in hindsight is the “compatibility mode”. It way helpful for debugging WP-Cumulus on blogs with poor markup, but I’m going to trust that SWFObject 2.2 does a better job and once again skip all the extra code required.

Lastly, to support unicode, your blog’s visitors will need Flash Player 10.

Security

Now that I have the main two parts (plugin and Flash movie), I need to hook the two up to each other. The basic idea behind how WP-Cumulus works has always been that WordPress supplied the tags through its wp_tag_cloud function. It was easy and convenient to simply pass that function’s output through to the movie using the “flashvars” interface.

However, as some experts have found, the technique of passing URLs through flashvars, while extremely common among Flash programmers, poses a security risk. Versions 1.22 and 1.23 pathed the biggest holes, but there’s still a very eloborate social XSS that could pose a risk to Cumulus users. Another issue is that some themes alter the output of wp_tag_cloud through an API hook. This is fine for the html tag cloud, but for WP-Cumulus it means my Flash movie doesn’t get the data as it expects it.

This means I’ll have to rethink the flow of data, and as a result, the movie’s technical interface is going to be radically different. I’m thinking along the lines of having the movie request its content from a fixed, relative url, and using JSON instead of XML. I know this also affects the authors of ports to other systems, but my primary concern is the WordPress community.

ASAP

There are lots of things that still need to be done. Like i18n, the data interface and better alternate (“no-flash”) content. I’m really committed to getting a completely rewritten version of the plugin out there as soon as possible, but I also want to make sure it’s stable. Think weeks, at least. There’s not a single line of code in the new version that I copied from 1.23, so it’ll need extensive testing.

51 Comments

  1. OMG! Thanks for your effort!

    Comment by BLUEnLIVE — May 29, 2010 @ 9:10 pm

  2. That would be so great to be able to use a new wp-cumulus! I’ve got a question – what’s about seo? The current version is not very seo-friendly I heared. Will the new one be?
    Thank’s for your effort!
    Valentin

    Comment by Valentin — May 30, 2010 @ 5:49 am

  3. The current version outputs the regular tag cloud for users without Flash. This means that the tags are there for search engines to see and index. By default, they’re hidden through CSS, to avoid a visual glitch. I’m hoping this won’t be necessary in the new version.

    I’ll be looking into the alternate content later, and SEO will be one of my primary concerns.

    Comment by Roy — May 30, 2010 @ 8:27 am

  4. This looks great, and is a lot like something I’ve been searching for. I’m wondering if you can help me find it.
    I’m looking for a 3D, rotatable node map to use as a sort of index. I have several uses in mind. One would be a sitemap. This would allow visitors to look at links between pages in a more compact way than navigating 2D trees or poking through tags and category lists.

    Another use is for mind-mapping, where a taxonomy of terms can be interlinked. This coudl all be rather simple, yet I don’t know of any software packages that make it so!

    Comment by dglp — May 30, 2010 @ 2:28 pm

  5. Sounds good, Roy. Looking forward to the release of version 2.0! :D

    Comment by Valentin — May 31, 2010 @ 9:58 am

  6. Maybe you can use the JavaScript version of WP-Cumulus as alternate content: JS-Cumulus. More information here: http://jeroenvanwarmerdam.nl/content/resources/javascript/jscumulus/jscumulus.aspx

    Comment by jerone — June 1, 2010 @ 3:24 pm

  7. Hi Roy, that’s really good news

    Hey I’m trying to replace the name of the tags for images, I have a Website dedicated to football and my idea is that instead of the “Green Bay Packers” tag a logo of the team appears in the sphere. This can be done? Associate a tag with an image?

    Thank you

    Regards from Mexico

    Ulises H

    Comment by Ulises Harada — June 6, 2010 @ 2:02 am

    • Ulises, the problem with that is that WP doesn’t use images with tags. To associate them, you’d need to add that functionality, which is outside the scope of WP-Cumulus. perhaps a separate plugin could work, and then a modified Cumulus that takes advantage of it. Not something you’d whip up in a few hours…

      Comment by Roy — June 17, 2010 @ 2:04 pm

  8. Awesome. I’ll be looking out for v 2.0

    Is it possible to use the Cumulus widget in more than one sidebar at a time?
    I have several sidebars and the drag/drop option for the wp cumulus disappears from the Available Widgets section after I use it it one of my sidebars.

    Thanks for your help/time/awesome plugin

    Comment by Chris S — June 6, 2010 @ 6:48 pm

  9. 支持….早点弄好 早点看疗效….- -

    Comment by nobird — June 10, 2010 @ 6:00 am

  10. Plugin that you make very interesting for me. Saves space and does not make the tags appear cluttered, this plugin provides excellence in proportion to a tag that becomes simple and make it easier for visitors looking for something with a unique look.

    Comment by blinkyymagizmo — June 10, 2010 @ 10:52 am

  11. The plugin does not display any content that is written in Arabic language. I want to use your plugin for Arabic blogs where every tag and category would be in arabic. For English it works fine but for Arabic it doesn’t display any character in arabic.

    Could please release some version which supports arabic language. Would be really thankful if you could make it early.

    Comment by Yasir Safeer — June 11, 2010 @ 12:07 pm

  12. One of the coolest way to display your wp tags in your site… we’re ready for your next version.

    Comment by Lakeside Techies — June 11, 2010 @ 6:28 pm

  13. Hi,

    Could you please tell me if you would be adding Arabic Language support in your next release. I want to use WP-Cumulus in an Arabic instance but the Arabic text is not displayed. Any chances if this will be added in next release. If yes, any approx date??

    Comment by Yasir — June 15, 2010 @ 6:54 am

    • Yasir, I’m not sure about the date. A developer who’s helping me out has back trouble, so it’s hard to tell. But utf-8 support will be in there, so it’ll support Arabic.

      Comment by Roy — June 17, 2010 @ 1:51 pm

  14. Hi Roy, first off huge respect for Cumulus, still my favourite plugin, and yes i’ll be donating soon. I’m guessing you’ll already know this but since the upgrade to WP 3 the plugin has broken. Do you know whether this is an issue with WP or with the plugin?

    Many thanks again,

    gladbot

    Comment by gladbeast — June 23, 2010 @ 8:56 am

    • Gladbeast, I have WP-Cumulus running successfully on WP3. You are the first to report any problems, so I think the problem is with your install somehow. I’d recommend doing a full uninstall/reinstall to see if that helps.

      Comment by Roy — June 25, 2010 @ 7:46 am

  15. well i gave that a go but it hasn’t changed things any, i read in an earlier comment that xml markup errors can cause issues, and i have lots of those according to www3, not being too deep when it comes to html/php et al i’m not sure how to attack the problem, i’ve had a few problems with different plugins breaking each other, so i will deacttivate them all and work through one by one, cheers for getting back, gladdy

    Comment by gladbeast — June 29, 2010 @ 3:20 pm

  16. ok, finished the trawl and it was Tag-ALLY for WP that was broken, should have guessed really, thanks for your input roy!

    Comment by gladbeast — June 29, 2010 @ 5:58 pm

  17. Hi Roy:

    Looking forward to the release of 2.0…

    Glad to see you reworking the plugin, this is definitely one of my favorites as it serves a dual function of increasing link-flow to deeper nested pages in a site as well as creating a sticky interfaces with users.

    On a side note, one of the reasons I stopped using it was I found it was leaving a site wide footprint. While we are developers as well (SEO Ultimate for WordPress) the thing about attribution links and footprints should be optional.

    In the page output / source code, the flash wrapper had a reference to your website (hence the 6MM inbound links). Is that going to be a part of 2.0, or do you intend to create an optional setting whereby one can disable the attribution link or set it to nofollow?

    Not to harp, but a sincere question (as Google is funny how they can define outbound links en mass).

    Comment by Jeffrey Smith — July 4, 2010 @ 2:16 pm

    • Hi Jeffrey. That’s something I’m looking into. Originally it made sense to put a message there that would lead users to my blog if they were getting this (essentially an error) message. The inbound link thing has gotten way out of hand and I’m considering more options for the alternative content.

      Comment by Roy — July 8, 2010 @ 8:10 pm

  18. I saw the tag cloud on bigblueball.com. Loved it! Very hot!

    Comment by NGala — July 16, 2010 @ 4:37 pm

  19. Hi Roy, is it possible to use the wp-cumulus in a horizontal banner like 80 x 990 px and show the words evenly spread in this area? This would be so great!

    Comment by Johanna — July 19, 2010 @ 2:02 pm

    • Hi Johanna. Yes, the “top 5 hacks” post has tips on how to achieve this.

      Comment by Roy — August 4, 2010 @ 11:44 am

  20. Very nice!

    By the way, I have ported your cloud to T3Blog – might be interesting for you :-)

    Best regards,
    Max.

    Comment by Max — July 22, 2010 @ 8:55 am

  21. Great news. Thank you!
    This wonder tag cloud is supper… Looking forward for UTF8

    Comment by Ivo Verners (Latvia) — July 26, 2010 @ 10:51 am

  22. I love WP-Columbus, but it stopped loading the latest Tags.

    I’m willing to test WP-Columbus 2.0 on my blog… imielvisser.com

    Comment by Imiel Visser — August 24, 2010 @ 12:33 pm

    • Imiel, As with the standard html tag cloud, Cumulus does not show the latest tags, but the most used ones. Once your’ve got a couple of hundred posts on your blog, chances are those don;t change much anymore.

      Comment by Roy — August 25, 2010 @ 3:12 pm

  23. Hi Roy, first, thx for that great plugin.

    i have changed some lines in wp-cumulus.php to allow the use of wp_tag_cloud parameters for the categories. I’ve tried it only in WP 3.0.1, and it works fine :)

    I’ve changed the line

    117: wp_list_categories(‘title_li=&show_count=1&hierarchical=0&style=none’);

    to:
    $wp_list_arg = ‘title_li=&show_count=1&hierarchical=0&style=none';
    if ( $options['args'] != “” ) {
    $wp_list_arg .= ‘&’ . $options['args'] ;
    }
    wp_list_categories($wp_list_arg );

    It would be great if you could add that to your next version :)

    Have a nice day
    Sven

    Comment by Sven Janßen — August 31, 2010 @ 9:48 am

  24. Hi Sven. As far as I can tell, this still allows users to use the “hierarchical” and “style” options, which would probably make the data unparsable for the Flash movie. This is why I didn’t add something like this before. In 2.0, all this will be pretty much irrelevant, due to changes in how the movie gets the tags.

    Comment by Roy — August 31, 2010 @ 11:50 am

  25. Hi Roy. An Associate has passed along the information for your WP-Cumulus. Could I use this on my site or does it have to be through WordPress. I found it on http://www.ironman.com.

    Thank you.

    Comment by Katelyn — September 21, 2010 @ 7:47 pm

    • Hi Katelyn. WP-Cumulus is open source. That includes the Flash movie’s source, and I’ve put up a couple of posts on this blog to help people get it running on their website. Quite a few people have used this to create ‘ports’ to other platforms, like Joomla, Drupal, Blogger, etc. But even if you’re not using a CMS, or one for which there currently isn’t a port, you can use the example html files on this page to get you started.

      Comment by Roy — September 22, 2010 @ 9:07 am

  26. Will it be possible to have it with a transparent background?

    Comment by Imiel Visser — September 21, 2010 @ 8:02 pm

    • Yes, just like in the current version, the new one will have an option to make the background transparent.

      Comment by Roy — September 22, 2010 @ 9:02 am

  27. Hi there,

    Love the tag cloud concept but the display looks messy because we have SO MANY categories. We’re using this for a new journals for our schools, and every program in our school has its own category. Is there any way to pick & choose which categories get displayed?

    Have been searching on google but haven’t found the answer yet…

    Thanks much,
    Lisa

    Comment by Lisa — October 4, 2010 @ 5:42 pm

    • Hi Lisa. I’m afraid not. WP limits the number of tags to 45, but there’s no maximum for the categories. It does seem that you’ve not enabled the “distribute evenly” option, which makes the cloud a little tidier.

      Comment by Roy — October 5, 2010 @ 11:51 am

  28. Thank you very much, WP-Cumulus is really great plugin.

    Comment by Ruben Sargsyan — October 29, 2010 @ 10:37 am

  29. Hi, great plugin you developed there :-)

    Just wondering if there is any news on the development of version 2 since May 2010?

    Comment by th23 — January 7, 2011 @ 2:20 pm

  30. Hi Roy,
    thanks for the plugin. I’ve been using v 1.23 w. WordPress 3.0.3. I am using it to display categories, but not able to get the count to display. I’ve been walking your code and the code in category-templates.php, but to no avail. I see on your line 117 you include the param to show the count in your call to wp_list_categories, but it seems to have no effect.

    wp_list_categories(‘title_li=&show_count=1&hierarchical=0&style=none’);

    also, is there a way to have the category in the cloud not have a “box” around it when selected. been trying all sorts of css, but this appears to be a flash issue. I edited css for img and a, but to no avail. I’d be happy to test out a beta version if needed. Thank you.

    Comment by Jason — January 19, 2011 @ 6:12 am

    • Hi Jason. I use show_count to determine the “weight” of a category. I ask WP to add the numbers only to chop them off in PHP and use them to make often-used categories appear bigger. The code that does this is rather complex, because it also factors in the tags (if used) so the two ranges match up. This all happens inside the Flash movie, and like removing the box, requires you to dig into the AS3 code.

      Comment by Roy — January 19, 2011 @ 10:02 am

  31. Because still without answer and as repetition to the posting of “th23″

    Just wondering if there is any news on the development of version 2 since May 2010?

    Well remembering that you already deleted my posting in September 2010 here in this forum, again asking for any progress. I am still interested, even if you don’t care about my needings. . . . . . . . .

    Comment by erika — January 19, 2011 @ 1:53 pm

  32. Hi Erika. If I deleted your comment I’m sorry. It’s very hard to distinguish real comments from spam and I got a lot of the latter.

    Development of 2.0 has once again grinded to a halt because Björn and I are both caught up in other projects. I’m looking for a way to end the deadlock the project seems to be in. If there are any developments you’ll read about them here.

    Comment by Roy — January 19, 2011 @ 4:12 pm

  33. what is this plug in could use to in blogger platform?why to use this plug in in blogger.com i can use in my blog

    Comment by Alica — February 21, 2011 @ 9:47 am

  34. Thanks for plugin. Its so very nice ;) And i use him in my blog :)

    Comment by Dawid — March 3, 2011 @ 11:57 pm

  35. Roy,

    Thanks for the great plugin. My traffic loves it. One question. It is possible to have the cloud in constant motion without the need for mouse-over?

    Thanks!
    Richard

    Comment by Richard — April 16, 2011 @ 3:12 pm

  36. Richard, that’s not a good idea becuase it causes high CPU load on the user’s computer. The earliest versions did this, lots of people asked me to alter this behavior. So I did.

    Comment by Roy — April 20, 2011 @ 11:12 am

  37. Hi Roy,

    wp-cumulus is really a must_have eye candy :)

    i use it for “categories” and “post tags”
    it would be great if you could implement support for “taxonomies / post terms” in cumulus 2.x

    at the moment i use these 2 plugins for “taxonomies” , but … no comparison to cumulus :)
    “Simple Taxonomy” and “Custom Taxonomies Menu Widget”

    thanks for your nice cumulus job
    ShM

    —- 2008/03/15/wp-cumulus-released/ —-

    With WP2.8 new taxonomy, and ability to create and use custom tags, will it be possible in a newt version to use these registered customized taxonomy as entry for cumulus tagcloud?

    Comment by Sat’ — June 22, 2009 @ 4:01 pm
    ——–

    Comment by ShM — April 20, 2011 @ 9:40 pm

  38. Hi, I’d tried everything to put cumulus into my website but it failed..can u help me please? show me step by step how to do it, because i am new in this…
    Thks

    Comment by Fadhil — April 22, 2011 @ 9:13 am

  39. sorry Roy,

    taxonomies are supported.

    for the widget/setting “wp_tag_cloud paramters:” i have to add
    “taxonomy=your-taxonomy”
    or for multi taxonomies
    “taxonomy=your-taxonomy-0 & “taxonomy=your-taxonomy-1″

    thanks
    shm

    ——–
    http://codex.wordpress.org/Template_Tags/wp_tag_cloud#Parameters
    taxonomy
    (string or array) (optional) Taxonomy or array of taxonomies to use in generating the cloud.

    ‘post_tag’
    ‘category’
    ‘link_category’
    ‘any other registered taxonomy’
    or array of taxonomies Note: this parameter was introduced with Version 3.1

    Default: post_tag

    Comment by ShM — April 22, 2011 @ 10:57 pm

  40. Hello !

    I have found cumulus on use in a site, and I found it very fine. So I want to use it for my personnal use as a bookmark collector. So I download the swf the xml and the js, write an html page and it work very well.

    But when I click on a link, nothing happens ?

    so my question is : is there any protection ? or other stuff like this, and why do not make a simple package with all these files independant of WP just for a simple integration in a page as a menu component ?

    Comment by Ben — August 31, 2011 @ 4:31 pm

    • Looks like you’re running into Flash’s security sandbox. Basically, you can’t link to other domains. If you’re running to on a server, you could try using a local redirect script to get around that.

      Comment by Roy — September 1, 2011 @ 8:07 am