Not so ultimate WordPress 2.2 tags

Update: I forgot to mention that you must hack a core file and adapt your theme, too. See the end of the article.

Upgrading to WordPress 2.2 bleeding edge is an adventure, always. Not necessarily because they introduce new bugs–it’s the new features that are sometimes worrying. When one svn up changed all the feeds from somewhat-valid RSS to invalid Atom, I didn’t complain because, hey, it’s the bleeding edge, and Atom is so much better anyway. I just fixed the bug, and it was good. (In retrospect, I should have sent a patch. I forgot.)

Having tagging functionality in the WordPress core is a good idea, too. In general. Basically. However, if there already exists a widely-deployed tagging plugin–and for WordPress, one very much does exist–it may be a good idea to look at the functionality and semantics of the existing plugin before reinventing the wheel, badly.

UTW has a function named is_tag(). WordPress 2.2 adds a function of the same name. Ergo, things break. Renaming the plugin dir helps, but your tags are gone. Re-activating the plugin shows you the shiny new plugin sandboxing (which, btw, Habari started in January), but doesn’t bring you back your tags.

Some searching might point you to the UTW tags importer (Options > Import > UTW). After a funny message about deleting unwanted tags from the UTW management page (hey, no plugin, no options page, okay?), the import kinda works. The “Did we say 5 steps? We meant 4. Ha ha ha.” joke is getting pretty old pretty fast, though. Then, instead of the UTW_ShowTagsForCurrentPost() function, you use the_tags() in your template. Of course, the semantics of the_tags() are slightly different from those of the_category(), and completely unlike the old UTW functions semantics.

So I decided to get UTW back. Despite claims to the opposite, the changes required are actually pretty simple: open ultimate-tag-warrior.php and search for occurrences of is_tag(. Replace all occurrences with UTW_is_tag(. Activate the plug-in.

Update: Do the same in your theme – where you use is_tag() now, change it to UTW_is_tag(). Then, open wp-includes/rewrite.php, search for the function get_tag_permastruct, and add return false; directly after the opening brace. (This unbreaks /tag/ pages.)

Done.

Kofferbomben

Heute im Zug, im Regionalexpress 3314 von Frankfurt Flughafen Regio nach Saarbrücken.

Kurz vor Bad Kreuznach, die Durchsage: “Im vorderen Zugteil … ein unbeaufsichtiges Gepäckstück … Besitzer … melden … ich wiederhole: Der Besitzer der blauen Tasche bitte … ansonsten wird die Tasche in Bad Kreuznach entfernt.”

In Bad Kreuznach: “Da das Gepäckstück … vom Bundesgrenzschutz (sic) … verzögert sich unsere Weiterfahrt um etwa 30 Minuten.”

Nach Bad Kreuznach: Wieso macht man sich solche Mühe eigentlich nur bei ganz offensichtlich mitten im Flur herumstehenden Gepäckstücken? Wenn ich Terrorist wäre, würde ich mit ein paar Taschen einsteigen und sie schön ordentlich im Gepäckfach verstauen. Dann nach ein, zwei Stationen mal kurz aufs Klo, und dann die nächste raus. Niemand achtet auf ordentlich verstautes Gepäck–bis zur Endstation. Für den genannten RE, zum Beispiel: Frankfurt/Main Hbf rein, eine Station nach Frankfurt/Main Flughafen Regionalbahnhof raus. Am besten am Wochenende, in den Ferien.

Man gut dass ich kein Terrorist bin.

Headway Festival 2007

I’m getting ready to go to the Headway Festival 2007 in Amstelveen (near Amsterdam), NL, this weekend. Although Headway is happening indoors, in P60, I will take a tent and a sleeping bag; I suppose I’ll be in for a little adventure.

The original plan was to go see both days of the festival: To-Mera, Sun Caged and California’s Zero Hour on Friday, and Saturday ending with a triple play of Loch Vostok, Sleepytime Gorilla Museum and finally, Redemption. (Besides, what is it with Californian prog metal acts and websites that end in …web.com?)

So, I would go with some friends, we’d get some hotel rooms, and drive home Saturday night. As is often the case with plans, they’re subject to change. It turned out that we had to leave Friday night for personal reasons. Aside from not seeing SGM, that raised some problems: A week after we planned the trip, I got accredited to take photos for Bright Eyes Magazine, who, naturally, want me to cover both days. There was also the minor issue of having to cancel the hotel reservations, but that was free of charge, luckily. However, with no one else staying, I had to look for new accomodation, and good luck with that in Amsterdam, on Easter.

There was no chance I could get any hotel close enough to the venue for that time, and there was no chance in hell I would pay €230 per night at the Dorint or some similarly luxurious place, when all I needed and wanted was a floor to lay on, and maybe a roof over my head. Only rather late did it occur to me to check for hostels, bed and breakfast, and… camping grounds!

So now, after everyone else leaves on Friday night, I will try to get to the camping site Het Amsterdamse Bos, crawl into my tent, and hope I won’t freeze. Then, on Saturday night, do the same thing. On Sunday, well-rested (I hope), I’ll start marching towards Amsterdam Zuid WTC train station, to board an ICE going back home. Sound fun? Hell yes. Until you try to put two sleeping bags and a tent and some clothes into a photo backpack… 🙂

I’m off to bed, for too little sleep and trying to fit too many things into too small a bag, and then to go to the Netherlands for some good, old, concert photography. Cross your fingers for good weather 🙂

‘Till Monday! \m/

Habari 0.1.1 released

Okay, seriously. Habari 0.1.1 Developer Release is now available for download and hacking:

The 0.1.1 version includes a fix for the search XSS problem and removes the misleading warning in the installer.

I don’t recommend using it on a public site without being aware of the problems! At the very least, you should put your Habari install on a different domain that does not hold any important data.

You’re welcome to drop by on irc.freenode.net #habari and join us in our inspired fork… barbe… hacking!

Habari DR released; forked

Hey, don’t worry! We’re just kidding! You’re reading Habari’s April Fools joke.

Update: ForkPress made 20,070,401 downloads already! I can’t believe it!

It started with great promise, great promises, and at an opportune time. Everyone and their mother were starting to get disgruntled with WordPress – it had its share of scandals, its codebase contained a lot of baggage from ye olde times, some of Matt‘s decisions didn’t go over so well with people, and some didn’t like the whole dot-com stuff going on.

Habari promised everything – a complete rewrite, using today’s technology, under a truly free license, and with a meritocratic development process. And it had a number of big names behind it.

It was a nice idea while it lasted.

It is now obvious to me that both the meritocratic process as well as truly free licenses absolutely and utterly fail to produce open, free software.

You might think this to be a strange thing to say, considering Habari finally released the Developer Review version today. Well, see for yourselves:

If I appear to be angry, it’s because I am! Scott (skippy) and Owen – both cofounders of Habari – have left the very project they founded in the dust, choosing to pursue commercial interests instead. The best part is that the codebase for their fork is probably Habari, and our choice of license allowed – encouraged – them to just take the code! Considering the timing of this decision, and the polish that went into their new projects already, it seems obvious to me that this move has been planned since quite some time — taking the hard work of volunteers, and going dot-com. And the worst part? They probably won’t hire me either, just like Automattic didn’t! In short: WTF BBQ.

I must say I feel happy about Habari’s Development Review release, but at the same time, I feel utterly betrayed. On the bright side, it is a statement about Habari‘s quality, but still…

Skippy, Owen… good luck with your new ventures — ForkPress and bbqPress.

Hire me?

Update: Chris J. Davis also talks about the topic.

Plan9 from Bell Labs

I kid, I kid. I have no intention of changing operating systems, at least until Linux finally is ready for the Deskop.
Plan 9 still is nice, though!

Much is foul in the state of computing today. Proprietary software is used throughout the industry as well as on the majority of personal computers. The promised Linux Desktop revolution, announced since years, has not happened so far, and people are beginning to doubt it ever will happen.

This madness must end. Continue reading “Plan9 from Bell Labs”

Ultimate Tag Warrior and Atom 1.0

If you’re using the latest bleeding-edge SVN version of WordPress with Ultimate Tag Warrior, check your feed’s validity. WordPress is finally getting around to implementing Atom 1.0 instead of sticking with the comparatively ancient Atom 0.3 (even the validator’s support is deprecated).

Unfortunately, due to the way WordPress and UTW work, UTW doesn’t have a way to really know what kind of feed is requested — the hook it registers is called the_category_rss, and it’s called with a parameter that’s either ‘rdf’, ‘rss’, and sometimes blank.

Even more unfortunate is that the_category_rss is called when an Atom feed is requested. UTW happily inserts the hardcoded <dc:subject> tags into the feed, and since that’s been superseded by <category> in Atom 1.0, and WordPress doesn’t declare the Dublin Core namespace anymore, your feed has just become invalid. Fix after the jump. Continue reading “Ultimate Tag Warrior and Atom 1.0”

Upgrade to WordPress 2.1.2 now

Update: The announcement is out. The important part is:

[…] a cracker had gained user-level access to one of the servers that powers wordpress.org, and had used that access to modify the download file […]

Nothing in the Subversion repository was touched, so if you upgrade and maintain your blog via SVN there is no chance you downloaded the corrupted release file.

This is the kind of thing you don’t want to happen to anyone.
Kudos to the WordPress guys for their quick reaction.

Original entry below.


The following mail was just posted to the WordPress mailing lists, as a reaction to this security advisory. There are multiple XSS vulnerabilities in WordPress <= 2.1.1 — inserted by a cracker — and an upgrade is urgently recommended.

Subject: Upgrade to 2.1.2
From: Matt Mullenweg m at mullenweg.com
Date: Fri Mar 2 19:41:35 GMT 2007

Hello everyone.

If anyone is running 2.1.1, or knows someone who is, I would recommend
upgrading to 2.1.2 as soon as possible. It is now available at
http://wordpress.org/download/

The md5 of the tar.gz is b1ae0c152e60300cba8c40c030baafd4.

No announcement quite yet, but coming soon. Thanks for your help.

Read the full announcement on wordpress.org.