<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Roy Tanck's weblog &#187; WordPress plugins</title> <atom:link href="http://www.roytanck.com/category/internet/wordpress-plugins/feed/" rel="self" type="application/rss+xml" /><link>http://www.roytanck.com</link> <description>Fascinated by new technology</description> <lastBuildDate>Thu, 09 Feb 2012 11:20:49 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /> <item><title>Easily accept credit card donations with WP-Stripe</title><link>http://www.roytanck.com/2012/01/20/easily-accept-credit-card-donations-with-wp-stripe/</link> <comments>http://www.roytanck.com/2012/01/20/easily-accept-credit-card-donations-with-wp-stripe/#comments</comments> <pubDate>Fri, 20 Jan 2012 17:26:24 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[Stripe]]></category> <category><![CDATA[WordPress]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=3466</guid> <description><![CDATA[TweetNoel Tock, who&#8217;s at WP On Tour with me, just released a brand new WordPress plugin that lets you accept Stripe payments. Stripe is a new, highly developer-friendly payment solution. They have low rates for processing and a great API. Right now, you can only use Stripe to accept payments if you&#8217;re in the US, [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton3466" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2012%2F01%2F20%2Feasily-accept-credit-card-donations-with-wp-stripe%2F&amp;via=roytanck&amp;text=Easily%20accept%20credit%20card%20donations%20with%20WP-Stripe&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2012%2F01%2F20%2Feasily-accept-credit-card-donations-with-wp-stripe%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><a href="http://www.noeltock.com">Noel Tock</a>, who&#8217;s at <a href="http://wpontour.com">WP On Tour</a> with me, just released a brand new WordPress plugin that lets you accept <a href="http://stripe.com">Stripe</a> payments. Stripe is a new, highly developer-friendly payment solution. They have low rates for processing and a great API. Right now, you can only use Stripe to accept payments if you&#8217;re in the US, but if you are, you can accept money from all over the world.<br /> <span id="more-3466"></span><br /> <img src="http://www.roytanck.com/wp-content/uploads/2012/01/wp-stripe-backend.png" alt="" title="wp-stripe-backend" width="590" height="478" class="alignnone size-full wp-image-3467" /></p><p><a href="http://wordpress.org/extend/plugins/wp-stripe">WP-Stripe</a> keeps track of recent payments (without storing the more sensitive bits), and has a widget that shows recent incoming transactions, with gravatars. If you&#8217;re running a charity, this can be a great way to thank your sponsors. Donors who&#8217;d prefer to remain anonymous can of course opt-out of this.</p><p>The donation form is inserted into any post or page on your blog using a simple shortcode. Here&#8217;s how it looks (screenshot, not an actual donations form).</p><p><img src="http://www.roytanck.com/wp-content/uploads/2012/01/wp-stripe-form.png" alt="" title="WP-Stripe form" width="433" height="645" class="alignnone size-full wp-image-3470" style="border:none;" /></p><p>Noel needs people to test the plugin, and fortunately, there&#8217;s a test setting in the API that lets you make payments without them actually getting processed. This is fully supported in version 1.0 of the plugin, and from what I&#8217;ve seen it works perfectly. Recommended.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2012/01/20/easily-accept-credit-card-donations-with-wp-stripe/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Using Cumulus? Please check your tagcloud.xml!</title><link>http://www.roytanck.com/2011/05/27/using-cumulus-please-check-tagcloud-xml/</link> <comments>http://www.roytanck.com/2011/05/27/using-cumulus-please-check-tagcloud-xml/#comments</comments> <pubDate>Fri, 27 May 2011 12:05:19 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[Blogging]]></category> <category><![CDATA[English]]></category> <category><![CDATA[Flash]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[WordPress plugins]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=3141</guid> <description><![CDATA[TweetBecause WP-Cumulus is open source software, the source files are available online. I didn&#8217;t package them with the regular plugin download, but you can download the Flash files from wordpress.org and my blog. Included in those downloads is a file called &#8220;tagcloud.xml&#8221;, which is mainly used to test the Flash movie locally, within Flash&#8217;s IDE. [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton3141" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2011%2F05%2F27%2Fusing-cumulus-please-check-tagcloud-xml%2F&amp;via=roytanck&amp;text=Using%20Cumulus%3F%20Please%20check%20your%20tagcloud.xml%21&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2011%2F05%2F27%2Fusing-cumulus-please-check-tagcloud-xml%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><img src="http://www.roytanck.com/wp-content/uploads/2011/05/XML.png" alt="" title="XML icon" width="128" height="128" class="alignleft size-full wp-image-3146" style="border: none;" />Because WP-Cumulus is open source software, the source files are available online. I didn&#8217;t package them with the regular plugin download, but you can download the Flash files from wordpress.org and my blog. Included in those downloads is a file called &#8220;tagcloud.xml&#8221;, which is mainly used to test the Flash movie locally, within Flash&#8217;s IDE. Unfortunately, that file sometimes ends up online. And, in most cases, it shouldn&#8217;t.<br /> <span id="more-3141"></span></p><h2>This is not the cloud you&#8217;re looking for&#8230;</h2><p>To properly (or rather: easily) develop and test the Flash movie that&#8217;s the heart of WP-Cumulus, it needs content. Without a set of tags, there&#8217;s nothing to see. So I created a file called &#8220;tagcloud.xml&#8221;. It&#8217;s loaded into the movie only if no tags are supplied through the regular route (flashvars). The tagcloud.xml bundled with the source code download is an older, outdated &#8220;dump&#8221; of my blog&#8217;s tags. That&#8217;s okay for testing, as long as its contents don&#8217;t get indexed by search engines.</p><p>Until recently, Google wasn&#8217;t very good at looking into swf (Flash) files, but it appears that this has changed. From what I can tell, Google now processes the actionscript inside, at least well enough to detect calls to external files. Unfortunately, Google&#8217;s bot isn&#8217;t quite smart enough to realize this particular file is only loaded as a fallback mechanism. And as a result, it tries to index the tag cloud xml file. This results in three possible scenarios.</p><h2>Option 1: No tagcloud.xml file: 404 errors</h2><p>If you&#8217;re running the stock WordPress implementation of WP-Cumulus, there should be no tagcloud.xml on your server. It&#8217;s not in the standard plugin distribution. Yet, Google will try to access it because it is potentially called from the Flash movie, resulting in a 404 &#8220;not found&#8221; error.</p><p>If you&#8217;re using something like Google&#8217;s Webmaster Tools to keep track of 404&#8242;s, you might have seen this error pop up. Rest assured, it&#8217;s not a missing file. The flash movie won&#8217;t actually call it. Since the plugin provides the tag cloud through flashvars, there&#8217;s no need to fall back to the static file.</p><h2>Option 2: You&#8217;re using tagcloud.xml to provide the tags</h2><p>If your website is &#8220;homebrew&#8221;, you may be using the tagcloud.xml to actually provide the Flash movie with its data. In this case, there&#8217;s nothing wrong with it getting indexed. At least not from a technological standpoint, SEO experts may disagree.</p><h2>Option 3: A tagcloud.xml exists in error, and is getting indexed</h2><p>If you&#8217;re using one of WP-Cumulus&#8217;s many ports to other platforms, you may have a tagcloud.xml in place. Chances are it&#8217;s not actually used, and it still has &#8220;my&#8221; data in it. In this case you really should remove the file from your web server. My website&#8217;s statistic indicate that a lot of websites have this scenario in place, and it&#8217;s causing a lot of unintended links from those sites to mine.</p><p>So, please check if your site has a tagcloud.xml, and whether it&#8217;s used. If not, please remove the file. If you&#8217;re the author of a port, please see if the file is needed in your distribution, and remove it if not. Thanks!</p><p><span style="color:#999;">(image by <a href="http://gurato.deviantart.com/">Gurato</a>)</span></p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2011/05/27/using-cumulus-please-check-tagcloud-xml/feed/</wfw:commentRss> <slash:comments>13</slash:comments> </item> <item><title>WP Time Machine &#8211; free off-site backups for WordPress</title><link>http://www.roytanck.com/2010/11/12/wp-time-machine-free-off-site-backups-for-wordpress/</link> <comments>http://www.roytanck.com/2010/11/12/wp-time-machine-free-off-site-backups-for-wordpress/#comments</comments> <pubDate>Fri, 12 Nov 2010 11:27:23 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[Blogging]]></category> <category><![CDATA[English]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[Amazon S3]]></category> <category><![CDATA[backup]]></category> <category><![CDATA[Dropbox]]></category> <category><![CDATA[FTP]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[security]]></category> <category><![CDATA[WordPress]]></category> <category><![CDATA[WP Time Machine]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2866</guid> <description><![CDATA[TweetA few days ago, @bakkel tweeted about WP Time Machine. This WordPress backup solution turned out to be exactly what I&#8217;d been looking for. It gathers all the relevant bits (like your blog&#8217;s database, uploaded images, etc) and uploads them to Dropbox, Amazon&#8217;s S3 or FTP. It even adds a file with comprehensive restore instructions. [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2866" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2010%2F11%2F12%2Fwp-time-machine-free-off-site-backups-for-wordpress%2F&amp;via=roytanck&amp;text=WP%20Time%20Machine%20%26%238211%3B%20free%20off-site%20backups%20for%20WordPress&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2010%2F11%2F12%2Fwp-time-machine-free-off-site-backups-for-wordpress%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><img src="http://www.roytanck.com/wp-content/uploads/2010/11/wptimemachine.png" alt="" title="wp time machine" width="129" height="139" class="alignleft size-full wp-image-2870" />A few days ago, <a href="http://twitter.com/bakkel">@bakkel</a> tweeted about <a href="http://wptimemachine.com">WP Time Machine</a>. This WordPress backup solution turned out to be exactly what I&#8217;d been looking for. It gathers all the relevant bits (like your blog&#8217;s database, uploaded images, etc) and uploads them to Dropbox, Amazon&#8217;s S3 or FTP. It even adds a file with comprehensive restore instructions. I&#8217;ve argued before that backups need to be absolutely painless, and with this plugin they are.<br /> <span id="more-2866"></span></p><h2>Dropbox</h2><p>I&#8217;d recommend setting the plugin to use <a href="http://www.dropbox.com">Dropbox</a>. Their free subscription only offers 2 GB of space, but as long as you&#8217;re not creating daily backups in seperate folders, that should be plenty. And you probably don&#8217;t need seperate folders because Dropbox keeps a 30-day file revision history. My site&#8217;s backup files take up around 70 MB of my 2 GB, and I&#8217;m able to restore previous versions, up to a month old, through Dropbox&#8217;s interface.</p><h2>A somewhat eccentric options page</h2><p><img src="http://www.roytanck.com/wp-content/uploads/2010/11/wptimemachine-admin.png" alt="" title="wp time machine admin screen" width="590" height="517" class="alignnone size-full wp-image-2871" /></p><p>Setting up the plugin is very easy, but the options page is a little awkward. For some options, it show a clickable link that toggles the setting to whatever it isn&#8217;t currently. There&#8217;s no indication of the option&#8217;s current state, except that it&#8217;s not what the link says. In my opinion, this is poor usability, and I&#8217;d really love for the author to change the options page to simply use radio buttons or checkboxes.</p><h2>Setting up recurring backups</h2><p>This is the hardest part. The plugin has an option to create a new backup every time a new post is published, but in most cases this is not ideal. The alternative is to set up a cron job on your server. Most hosts allow you to do this, but it can be a little tricky to get up and running. The plugin&#8217;s website has a <a href="http://wptimemachine.com/-/scheduling-wp-time-machine-via-cron/">guide on how to set up a cron job</a>, but I think this should probably be made easier.</p><p>That being said, WP Time Machine is the best free solution I&#8217;m aware of for backing up your WordPress install. It does more that the typical database-only backup plugins, and storing backup files off-site adds extra security. Recommended.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2010/11/12/wp-time-machine-free-off-site-backups-for-wordpress/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>bbAggregate lets you mix and match WordPress content</title><link>http://www.roytanck.com/2010/09/30/bbaggregate-lets-you-mix-and-match-wordpress-content/</link> <comments>http://www.roytanck.com/2010/09/30/bbaggregate-lets-you-mix-and-match-wordpress-content/#comments</comments> <pubDate>Thu, 30 Sep 2010 13:38:26 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[aggregation]]></category> <category><![CDATA[bbAggregate]]></category> <category><![CDATA[Bjorn Wijers]]></category> <category><![CDATA[burobjorn]]></category> <category><![CDATA[multisite]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[WordPress]]></category> <category><![CDATA[WPMU]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2801</guid> <description><![CDATA[TweetWhen I first started using WPMU, the now-integrated multisite version of WordPress, I found it strange that there were no built-in tools to aggregate content onto the main blog. It seemed to me that that was something plenty of people would want to do. Sure, there were plugins and hacks, but none of them were [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2801" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2010%2F09%2F30%2Fbbaggregate-lets-you-mix-and-match-wordpress-content%2F&amp;via=roytanck&amp;text=bbAggregate%20lets%20you%20mix%20and%20match%20WordPress%20content&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2010%2F09%2F30%2Fbbaggregate-lets-you-mix-and-match-wordpress-content%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><img src="http://www.roytanck.com/wp-content/uploads/2010/09/bbaggregate.png" alt="" title="bbAggregate screenshot" width="279" height="237" class="alignleft size-full wp-image-2804" />When I first started using WPMU, the now-integrated multisite version of WordPress, I found it strange that there were no built-in tools to aggregate content onto the main blog. It seemed to me that that was something plenty of people would want to do. Sure, there were plugins and hacks, but none of them were as polished as I&#8217;d like them to be.</p><p>Fortunately, things have changed. WordPress 3.0 now has multisite capabilities built right into it, and <a href="http://www.burobjorn.nl">Bjorn Wijers</a>, a friend of mine and one of Holland&#8217;s top WordPress developers, has created a really cool plugin to handle content aggregation. Called <a href="http://wordpress.org/extend/plugins/bbaggregate/">bbAggregate</a>, this plugin doesn&#8217;t just collect posts from blogs to be displayed on the home page, it allows you to display aggregated content on <strong>any</strong> of your network&#8217;s blogs. And to do this it introduces the concept of streams.<br /> <span id="more-2801"></span></p><h2>Streams</h2><p>Once installed, bbAggregate will allow you to create and manage so-called &#8220;streams&#8221; of content. If there are multiple bloggers in your network who write about cats, you could set up a stream called &#8220;cats&#8221;. Post authors would ten be able to add posts they write to the &#8220;cats&#8221; stream. At the same time, they can choose to show the &#8220;cats&#8221; stream on their blog. If others blog about dogs, setting up a &#8220;dogs&#8221; and a &#8220;pets&#8221; stream makes sense. It may help to think of streams as a type of category, but there&#8217;s a little more to it than that.</p><p><img src="http://www.roytanck.com/wp-content/uploads/2010/09/bbaggregate-screenshot.png" alt="" title="bbaggregate screenshot" width="590" height="592" class="alignnone size-full wp-image-2809" /></p><h2>Control</h2><p>Unlike with (site-wide) categories, bbAggregate offers fine-grained control over what is shown in a stream. You can exclude blogs, limit the number of posts per blog and set up pagination. There&#8217;s no per-post control over what is in the stream (other than by editing that post, if you have the right privileges), but the plugin makes it very easy to exclude blogs that don&#8217;t play nice.</p><h2>Room for improvement</h2><p>This is a brand new plugin. Considering how complex the underlying code must be, the currently released version is very mature. However, there are a few things I think could be improved. The main one is that in order to display a stream, some theme editing is required. This is a well-documented and easy process, but I&#8217;d love to see a more seamless integration in future versions. I&#8217;m pretty sure this can be done, and it would greatly improve the project&#8217;s change of being widely adopted.</p><p>If you&#8217;re looking for a flexible way to cross-aggregate posts on your multisite WordPress install, I&#8217;d highly recommended checking out <a href="http://wordpress.org/extend/plugins/bbaggregate/">bbAggregate</a>.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2010/09/30/bbaggregate-lets-you-mix-and-match-wordpress-content/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>About the &#8216;hidden&#8217; links in WP-Cumulus</title><link>http://www.roytanck.com/2010/08/09/about-the-hidden-links-in-wp-cumulus/</link> <comments>http://www.roytanck.com/2010/08/09/about-the-hidden-links-in-wp-cumulus/#comments</comments> <pubDate>Mon, 09 Aug 2010 14:05:49 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Flash]]></category> <category><![CDATA[SEO]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[hidden links]]></category> <category><![CDATA[WordPress.org]]></category> <category><![CDATA[WP-Cumulus]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2711</guid> <description><![CDATA[TweetRecently, I came across discussions on Twitter, and a blog post about &#8216;hidden links&#8217; in my WP-Cumulus WordPress plugin. Quite frankly, I&#8217;m a little embarrassed by this, and I&#8217;d like to explain how the situation came to be, and what I plan to change in upcoming versions. History When I did the first couple of [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2711" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2010%2F08%2F09%2Fabout-the-hidden-links-in-wp-cumulus%2F&amp;via=roytanck&amp;text=About%20the%20%26%238216%3Bhidden%26%238217%3B%20links%20in%20WP-Cumulus&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2010%2F08%2F09%2Fabout-the-hidden-links-in-wp-cumulus%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p>Recently, I came across discussions on Twitter, and a <a href="http://www.searchengineoptimisation.com/seo-blog/blogging-for-seo/wordpress-tag-cloud-the-hidden-links-making-your-site-fall-foul-of-google-guidelines.html">blog post</a> about &#8216;hidden links&#8217; in my WP-Cumulus WordPress plugin. Quite frankly, I&#8217;m a little embarrassed by this, and I&#8217;d like to explain how the situation came to be, and what I plan to change in upcoming versions.<br /> <span id="more-2711"></span></p><h2>History</h2><p>When I did the first couple of versions of WP-Cumulus, it was not hosted on wordpress.org. All there was in terms of user support was the comments section of a blog post on this blog. To help people troubleshoot flash plugin trouble, I linked to that post in the alternative or &#8220;no flash&#8221; content. This content is shown only to user without (the right version of) Flash. It is very common among Flash developers to link &#8216;home&#8217; this way. I was aware this would also be shown to search engines, but at the time there were only a couple of users. My reasoning back then was that providing a helpful message was important enough to warrant putting the link there.</p><h2>Whoa, millions of incoming links&#8230;</h2><p>Then, Cumulus started catching on. I moved it to wordpress.org, where it made the top 10 most popular plugins a few times. People were starting to port the plugin to other platforms, and I started getting tons of support requests. Some days, just answering these would take hours. I was overwhelmed. Around the same time, I started noticing an increase of traffic on my blog. At first I thought it was because people were googling for the plugin, but it soon became apparent that there was more going on.</p><p>As an unexpected side-effect of the &#8216;no flash&#8217; link, my blog now had thousands of incoming links, causing it to rank well in Google. Because I sometimes write about things like hosting, advertisers were starting to show interest, and I have to admit I jumped at the opportunity. As time went by, it became increasingly &#8216;difficult&#8217; to remove the links. Here I was, making a little extra money because of a link I forgot to remove somewhere along the way. But even so, I no longer feel comfortable with the current situation, and have been planning to remedy it for a while.</p><h2>Future versions</h2><p>As you may have read on this blog, I&#8217;ve been trying to get more people involved in the project. It needs a better programmer than I am to keep it up to date. Unfortunately, this has not proven very easy. As a result, WP-Cumulus 2.0 has been in development for over a year, and one of the things it aims to fix is this &#8216;hidden links&#8217; situation. I&#8217;ve decided that any link in the alternative content should be optional, and disabled by default. And it should probably point to the wordpress.org page instead of this blog. By default, it makes sense to show the regular (html) tag cloud to users without Flash. Version 2.0 will probably do it that way.</p><p>I&#8217;ll be working on Cumulus 2.0 this week (with one of the best software developers I know, whoohoo!), and I hope to have a rough version some time this month. It&#8217;ll put you in control of what is shown to users, search engines and everthing else. As it should have been all along.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2010/08/09/about-the-hidden-links-in-wp-cumulus/feed/</wfw:commentRss> <slash:comments>11</slash:comments> </item> <item><title>WP-Cumulus 2.0 is finally in development (again)</title><link>http://www.roytanck.com/2010/05/29/wp-cumulus-2-is-finally-in-development-again/</link> <comments>http://www.roytanck.com/2010/05/29/wp-cumulus-2-is-finally-in-development-again/#comments</comments> <pubDate>Sat, 29 May 2010 19:54:44 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[WordPress]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[Flash]]></category> <category><![CDATA[i18n]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[SWFObject]]></category> <category><![CDATA[tag cloud]]></category> <category><![CDATA[tags]]></category> <category><![CDATA[WP-Cumulus]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2678</guid> <description><![CDATA[TweetI&#8217;ve been promising a new version of WP-Cumulus for a long time. I&#8217;ve tried working with more experienced PHP developers, but it&#8217;s been hard to find a really good one who&#8217;s able to devote time to the project. I still think a plugin like this should be a team effort, but for now I&#8217;m going [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2678" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2010%2F05%2F29%2Fwp-cumulus-2-is-finally-in-development-again%2F&amp;via=roytanck&amp;text=WP-Cumulus%202.0%20is%20finally%20in%20development%20%28again%29&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2010%2F05%2F29%2Fwp-cumulus-2-is-finally-in-development-again%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p>I&#8217;ve been promising a new version of WP-Cumulus for a long time. I&#8217;ve tried working with more experienced PHP developers, but it&#8217;s been hard to find a really good one who&#8217;s able to devote time to the project. I still think a plugin like this should be a team effort, but for now I&#8217;m going to kick things back into motion again myself.</p><p>What&#8217;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&#8217;ve also got a Flash movie that uses a user-defined system font, as a result is much smaller, and supports unicode tags.<br /> <span id="more-2678"></span></p><h2>Burning bridges</h2><p>I&#8217;ve decided to bump the required WordPress version to 2.8 or 2.9. There&#8217;s so much code in the current version that&#8217;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.</p><p>Another thing I consider a bad idea in hindsight is the &#8220;compatibility mode&#8221;. It way helpful for debugging WP-Cumulus on blogs with poor markup, but I&#8217;m going to trust that SWFObject 2.2 does a better job and once again skip all the extra code required.</p><p>Lastly, to support unicode, your blog&#8217;s visitors will need Flash Player 10.</p><h2>Security</h2><p>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&#8217;s output through to the movie using the &#8220;flashvars&#8221; interface.</p><p>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&#8217;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&#8217;t get the data as it expects it.</p><p>This means I&#8217;ll have to rethink the flow of data, and as a result, the movie&#8217;s technical interface is going to be radically different. I&#8217;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.</p><h2>ASAP</h2><p>There are lots of things that still need to be done. Like i18n, the data interface and better alternate (&#8220;no-flash&#8221;) content. I&#8217;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&#8217;s stable. Think weeks, at least. There&#8217;s not a single line of code in the new version that I copied from 1.23, so it&#8217;ll need extensive testing.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2010/05/29/wp-cumulus-2-is-finally-in-development-again/feed/</wfw:commentRss> <slash:comments>51</slash:comments> </item> <item><title>Closing the comments on WP-Cumulus posts</title><link>http://www.roytanck.com/2010/01/22/closing-the-comments-on-wp-cumulus-posts/</link> <comments>http://www.roytanck.com/2010/01/22/closing-the-comments-on-wp-cumulus-posts/#comments</comments> <pubDate>Fri, 22 Jan 2010 08:46:31 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Uncategorized]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[comments]]></category> <category><![CDATA[forums]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[support]]></category> <category><![CDATA[WordPress]]></category> <category><![CDATA[WP-Cumulus]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2495</guid> <description><![CDATA[TweetI hate having to do this, but I&#8217;m going to be closing the comments on most of the WP-Cumulus related posts on this blog. Because some have several hundred comments, they&#8217;ve become impossible to read and I find that the same questions keep getting asked over and over again. I&#8217;ve tried to patiently answer all [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2495" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2010%2F01%2F22%2Fclosing-the-comments-on-wp-cumulus-posts%2F&amp;via=roytanck&amp;text=Closing%20the%20comments%20on%20WP-Cumulus%20posts&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2010%2F01%2F22%2Fclosing-the-comments-on-wp-cumulus-posts%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><img src="http://www.roytanck.com/wp-content/uploads/2010/01/padlock-150x150.jpg" alt="" title="padlock" width="150" height="150" class="alignleft size-thumbnail wp-image-2496" />I hate having to do this, but I&#8217;m going to be closing the comments on most of the WP-Cumulus related posts on this blog. Because some have several hundred comments, they&#8217;ve become impossible to read and I find that the same questions keep getting asked over and over again. I&#8217;ve tried to patiently answer all of them, but I&#8217;m no longer able to keep up. Blog comments just aren&#8217;t a very good support mechanism.</p><p>If your question is about WP-Cumulus, the original WordPress plugin, not one of its ports or variations, please post it in the <strong><a href="http://wordpress.org/tags/wp-cumulus">WordPress forums</a></strong>. This allows others to find the answers, and chances are your question has been discussed already. The forums are an invaluable resource, and offer a much better platform for WP-Cumulus support. If you add the &#8220;wp-cumulus&#8221; tag to your thread, I&#8217;ll almost certainly see it.</p><p>I&#8217;ll also try to update the <a href="http://wordpress.org/extend/plugins/wp-cumulus/faq">FAQ</a> more often. It&#8217;s a little out of date, but definitely still a good place to start. Oh, and for more info, see my <a href="http://www.roytanck.com/about/contact/">support</a> page.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2010/01/22/closing-the-comments-on-wp-cumulus-posts/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>BB-Cumulus takes your forum tags for a spin</title><link>http://www.roytanck.com/2009/12/15/bb-cumulus-takes-your-forum-tags-for-a-spin/</link> <comments>http://www.roytanck.com/2009/12/15/bb-cumulus-takes-your-forum-tags-for-a-spin/#comments</comments> <pubDate>Tue, 15 Dec 2009 13:07:53 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[3D]]></category> <category><![CDATA[bbPress]]></category> <category><![CDATA[forum]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[ports]]></category> <category><![CDATA[tags]]></category> <category><![CDATA[WP-Cumulus]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2419</guid> <description><![CDATA[TweetWP-Cumulus has been ported to quite a few other platforms. I keep bumping into it, often on sites not running WordPress. I&#8217;ve given up trying to post about all of these spin-off projects, but this one feels a little special. Gautam Gupta has created a bbPress version. As far as I&#8217;m aware this is the [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2419" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2009%2F12%2F15%2Fbb-cumulus-takes-your-forum-tags-for-a-spin%2F&amp;via=roytanck&amp;text=BB-Cumulus%20takes%20your%20forum%20tags%20for%20a%20spin&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2009%2F12%2F15%2Fbb-cumulus-takes-your-forum-tags-for-a-spin%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><img src="http://www.roytanck.com/wp-content/uploads/2009/12/bbpress.png" alt="bbpress logo" title="bbpress logo" width="141" height="141" class="alignleft size-full wp-image-2424" />WP-Cumulus has been ported to quite a few other platforms. I keep bumping into it, often on sites not running WordPress. I&#8217;ve given up trying to post about all of these spin-off projects, but this one feels a little special. <a href="http://gaut.am/">Gautam Gupta</a> has created a <a href="http://bbpress.org/plugins/topic/bb-cumulus/">bbPress version</a>. As far as I&#8217;m aware this is the first port to another <a href="http://automattic.com/">Automattic</a> project (I&#8217;m still waiting for a wordpress.com &#8216;port&#8217;, come on Matt <img src='http://www.roytanck.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ).</p><p>So, if you want your forum tags to fly like your blog tags, head over to <a href="http://bbpress.org/plugins/topic/bb-cumulus/">http://bbpress.org/plugins/topic/bb-cumulus/</a> for the download.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2009/12/15/bb-cumulus-takes-your-forum-tags-for-a-spin/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Help me test WP-Cumulus unicode support</title><link>http://www.roytanck.com/2009/11/27/help-me-test-wp-cumulus-unicode-support/</link> <comments>http://www.roytanck.com/2009/11/27/help-me-test-wp-cumulus-unicode-support/#comments</comments> <pubDate>Fri, 27 Nov 2009 15:33:41 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Flash]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[characters]]></category> <category><![CDATA[language]]></category> <category><![CDATA[Latin]]></category> <category><![CDATA[test]]></category> <category><![CDATA[unicode]]></category> <category><![CDATA[upgrade]]></category> <category><![CDATA[WP-Cumulus]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2392</guid> <description><![CDATA[TweetThe one feature I&#8217;ve always wanted to add to WP-Cumulus is true unicode support. Flash player 9 made this impossible because it needed to have the font characters embedded into the movie, and unicode fonts are simply too big for that. But with Flash 10, Adobe has introduced new ways of handling text, and those [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2392" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2009%2F11%2F27%2Fhelp-me-test-wp-cumulus-unicode-support%2F&amp;via=roytanck&amp;text=Help%20me%20test%20WP-Cumulus%20unicode%20support&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2009%2F11%2F27%2Fhelp-me-test-wp-cumulus-unicode-support%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p>The one feature I&#8217;ve always wanted to add to WP-Cumulus is true unicode support. Flash player 9 <a href="http://www.roytanck.com/2008/08/04/how-to-add-more-characters-to-wp-cumulus/">made this impossible</a> because it needed to have the font characters embedded into the movie, and unicode fonts are simply too big for that. But with Flash 10, Adobe has introduced new ways of handling text, and those now allow for non-embedded text to be animated quite smoothly. There&#8217;s also no longer any need to specify an exact font name, you can simply tell the player to get a sans-serif font. Flash player 10 is on over 93% of computers now, so it starts to make sense to use it to finally add this long-awaited feature to WP-Cumulus.<br /> <span id="more-2392"></span><br /></p><div id="flashcontent" style="border:1px solid #ccc;">This movie requires Flash Player 10 or better.</div><p></p><p>I&#8217;ve created a test movie (above) that uses these new features, and I&#8217;m anxious to find out if it works for you, especially if you&#8217;re in Asia, Russia or anywhere else with a non-Latin character set.</p><h2>What are you seeing?</h2><ul><li>Are you seeing all 45 tags (approximately), in many languages?</li><li>Are you seeing your (non-Latin) language?</li><li>Any other issues?</li><li>Do you want me to add your language to the test? Post the language name here.</li></ul><p>Please leave a comment below and tell me if the movie works as it should. Thanks!</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2009/11/27/help-me-test-wp-cumulus-unicode-support/feed/</wfw:commentRss> <slash:comments>154</slash:comments> </item> <item><title>WP-Cumulus updated to address yet another security issue</title><link>http://www.roytanck.com/2009/11/15/wp-cumulus-updated-to-address-yet-another-security-issue/</link> <comments>http://www.roytanck.com/2009/11/15/wp-cumulus-updated-to-address-yet-another-security-issue/#comments</comments> <pubDate>Sun, 15 Nov 2009 19:20:06 +0000</pubDate> <dc:creator>Roy</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[WordPress plugins]]></category> <category><![CDATA[exploit]]></category> <category><![CDATA[fix]]></category> <category><![CDATA[Flash]]></category> <category><![CDATA[plugin]]></category> <category><![CDATA[security]]></category> <category><![CDATA[vulnerability]]></category> <category><![CDATA[WordPress]]></category> <category><![CDATA[WP-Cumulus]]></category> <category><![CDATA[XSS]]></category><guid isPermaLink="false">http://www.roytanck.com/?p=2343</guid> <description><![CDATA[TweetA few weeks ago I rushed out an update to fix a potentially dangerous Cross-Site Scripting (XSS) vulnerability in WP-Cumulus. With the PHP part of the plugin shielded from &#8216;outside use&#8217;, I was hoping no more issues would pop up. Still, I&#8217;m glad MustLive alerted me to another issue that uses the Flash movie itself. [...]]]></description> <content:encoded><![CDATA[<div id="tweetbutton2343" class="tw_button" style="float: right; margin: 0 0 0 10px;"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.roytanck.com%2F2009%2F11%2F15%2Fwp-cumulus-updated-to-address-yet-another-security-issue%2F&amp;via=roytanck&amp;text=WP-Cumulus%20updated%20to%20address%20yet%20another%20security%20issue&amp;related=&amp;lang=en&amp;count=vertical&amp;counturl=http%3A%2F%2Fwww.roytanck.com%2F2009%2F11%2F15%2Fwp-cumulus-updated-to-address-yet-another-security-issue%2F" class="twitter-share-button"  style="width:55px;height:22px;background:transparent url('http://www.roytanck.com/wp-content/plugins/wp-tweet-button/tweetn.png') no-repeat  0 0;text-align:left;text-indent:-9999px;display:block;">Tweet</a></div><p><img src="http://www.roytanck.com/wp-content/uploads/2009/09/danger-sign.jpg" alt="danger sign" title="danger sign" width="112" height="128" class="alignleft size-full wp-image-2213" />A few weeks ago I <a href="http://www.roytanck.com/2009/09/27/wp-cumulus-1-22-fixes-a-security-hole-please-upgrade/">rushed out an update</a> to fix a potentially dangerous Cross-Site Scripting (XSS) vulnerability in WP-Cumulus. With the PHP part of the plugin shielded from &#8216;outside use&#8217;, I was hoping no more issues would pop up. Still, I&#8217;m glad MustLive <a href="http://websecurity.com.ua/3665/">alerted</a> me to another issue that uses the Flash movie itself. The exploit worked by calling the SWF file directly, and supplying link with javascript. I&#8217;m not quite sure how dangerous this is, but I&#8217;ve modified the movie so it only executes regular links.</p><p><strong>Please update your copy of WP-Cumulus to 1.23 asap. For most users it should only take two clicks.</strong></p><p>The should not affect how WP-Cumulus works on WordPress blogs. But there have been a number of ports and other projects that use the Flash movie. I urge the authors of those projects to examine the new Flash movie, and see if it still works in/with their product. The exploit is not unique to WordPress, and they may need to modify the security check to fit their project.</p> ]]></content:encoded> <wfw:commentRss>http://www.roytanck.com/2009/11/15/wp-cumulus-updated-to-address-yet-another-security-issue/feed/</wfw:commentRss> <slash:comments>13</slash:comments> </item> </channel> </rss></head>
