Come for the widgets, stay for the puddin’

First off, let me apologize for the title of this post. Thank you. I want to greet everyone arriving from the blog post pointing to this blog. I want to shake your hand and kiss your baby and wish you good luck.

Speaking of luck, I picked up a $20 bill off the sidewalk last night in downtown Austin. Later I would give it to Ryan to buy the first round of drinks. He used his credit card and pocketed the twenty. Smart.

Anyway, about the RSS widgets. Aside from the language and character set problems, which I’m working on, what do you think? What is the coolest kind of feed to drop in your dashbar?

Widgets User Interface and API

I don’t have a lot to tell you here but I wanted to give you a peek at the interface we’ve been developing for WordPress Widgets. It’s not final but it’s working and if I may be the first to say so, it’s damn sexy! Of the top four browsers, FF/IE/O8/Safari, I have coaxed the script to work nicely with three of them and Matt reports that it works in Safari on his new Intel Mac Mini. Here’s the screenshot:

Widgets Screenshot

Continue reading Widgets User Interface and API

Austin Wifi: Arturo’s Underground Cafe

This is excellent. I’m with Matt at Arturo’s Underground Cafe in Austin. The coffee is good, the people are cool, the wifi is on and the power is available. What’s most fun about Arturo’s is the art. The walls are already covered in bright murals but add to that a handful of bright oil paintings and it’s a gorgeous place to work.

Did you read about the upcoming stats upgrade we’re doing to That’s what we’re working on. Just a few hints: post visits, referrers, search terms, graphs.

New Theme Feature: Mime Icons

WordPress 2.0 lets you upload files as post attachments. Every attachment has its own database record and its own web page much like its parent post. When linking to these attachments, you can use the URL of the file (a direct link) or the attachment’s page URL (sometimes called a subpost). These subposts display the title and description and a link to the file in a template that, by default, looks just like the post it’s attached to.

Very recently we added some new features that allow theme authors to customize the way attachments are displayed based on the type of file. An jpeg file will have the mime type “image/jpeg” while an mp3 will have the type “audio/mpeg”. When someone visits the attachment permalink, WordPress will look for theme files with names matching the mime type of the attached file. If the theme includes a file “audio.php” it will be used for all audio attachments. Likewise for a theme file named “image.php”. If the mime-related file isn’t found, WP will look for “attachment.php” and if that fails, it will fall into compatibility mode.

Compatibility mode ensures older themes will display attachments in WordPress 2.0. WordPress uses the theme’s usual template to display the subpost and adds a link to the attached file above the file’s description. This link is generated according to a set of rules: if it’s an image, use the thumbnail or the original; else if it’s another type of file and the theme includes an image named for the mime type use that; else make a text link using the attachment’s title.

That’s right, theme authors can now include graphic icons for attached files, e.g. audio.jpg, text.gif, application_msword.png! I think podcasting blogs will be the first to jump on this feature. Adventurous plugin authors are encouraged to find and use the many new and not-yet-documented hooks in these functions. It’s even possible to attach a thumbnail to any uploaded file, not just images, and have WP use that when generating the icon for that attachment.

ScreenshotsThe default theme has been updated to take advantage of most of the new attachment features listed above, as well as some more advanced programming to display the subposts differently depending on the size of the link generated. I put together a little demo showing this and I’ll explain it after the jump.

I hope you enjoy these features, or at the very least I hope they don’t get in your way if you aren’t using them!