Guangzhou Theme – WordPress and bbPress

So finally, after an extended development period and many people asking ‘are you ever releasing it’, I’ve released the theme files for the Guangzhou WordPress and bbPress theme.

As I say elsewhere:

Guangzhou is a two-column fixed width theme for both WordPress and bbPress. It is highly configurable, with two widget areas (sidebar and bottom), as well as customisable skins and many other options. It supports threaded and paged comments, making for very flexible discussion pages, as well as separating pings and trackbacks from comments – essential to keep the flow of conversation consistent.

Guangzhou has been in use on this site for over a year now and drives the appearance of both the main website and support forum. One of the main reasons for selecting bbPress for the forum was it’s integration with WordPress, and this theme brings this even closer.

I even took some extra time to make a short video:

Note that this theme requires WordPress 2.8 or bbPress 1.0

Redirection 2.1.15 – New Ajax and Japanese

Although lacking in new features, this release includes a rewrite of the administration Ajax to use the WordPress provided admin-ajax functions, as well as moving all JavaScript fully into the jQuery world. Hopefully this will solve any issues caused by strange server setups.

In addition, a Japanese translation has been provided by Naoko McCracken.

A Case of a Weak Escape

All of my plugins should now be WordPress 2.8 compatible. For the majority of them the only issues involved were based on the use of the WordPress SQL escaping function. Previously I was calling this statically:

wpdb::escape

A bad habit I probably picked up from somewhere back in the WordPress 1.5 days that has stuck around. In WordPress 2.8 this function no longer works statically. The simple fix is to change it into:

$wpdb->escape

I’ve mentioned this here in case it’s useful to anyone else experiencing a PHP error along the lines of:

Call to undefined method _weak_escape()

A preferable change will be to make use of the new SQL prepare functions: Data Validation.

In other plugin news I’ve add a Geo IP locator service to this site, which is now used internally in my plugins for mapping an IP address to a location. Quite a fun excerise, and one less reliance on external services (which have a tendency to change without you noticing).

All About Email

I’ve been doing a bit of work recently for Automattic, culminating in Post by Email. If you’ve not seen it yet it’s a nifty way of publishing a post to WordPress.com by sending an email. Text and attachments are all converted into a WordPress post, and everything works just as if you’d typed it into a browser. All told a very quick and simple way of publishing and it’s been a lot of fun (and frustration) to develop.

Talking of which, the pace of development at Automattic is really quite astonishing and there’s a lot of very exciting stuff going on. From a technical point of view I never realised just how deep the rabbit hole goes. From a user’s point of view this is exactly how it should be.