The WordPress folks have announced that the 2.9 release will focus mostly on media handling features. They have posted a list of features for consideration and are asking everyone to vote on their favorites.
I applaud them for a great list of useful enhancement ideas, however, I would love to see it approached from a slightly different angle.
I’ve had the opportunity to train and observe many non-technical users as they deal with images in WordPress. It is clear that the current process is too hard many users, especially with advanced themes that require different images sizes in multiple zones of the design. Theme creators have attempted to use custom fields and such to deal with these scenarios, but that handling just doesn’t feel natural and intuitive.
Some of the proposed enhancement ideas involve allowing more custom sizes and configurations of images to be defined and used. Excellent!
But think about this: Why do we want an image of a certain size? Most of the time it’s because it needs to fit into the design somewhere.
So instead of adding user complexity to the WordPress admin in defining image sizes, why not push that into being a theme decision? After all, that’s where the images end up being used.
Here are a few components of my WordPress image handling dream:
- Make it dead simple for a theme to specify the image sizes needed and name them. Maybe this could be defined up in the header comments section of the main css file.
- Provide a function to easily display a named size image in the theme.
- Create and cache the various image sizes as needed. Switching to a new theme with different sizes should not then pose a problem.
- Allow the user to swap out a different image for a named size through the UI. For example, a thumbnail might be best cropped or zoomed a different way than the full-size image so allow it to be replaced with a custom variation.
So what do you think? Is it a good idea or flawed thinking? Either way, I encourage you to go take the survey on the enhancement suggestions and let your voice be heard.