I’m currently working on a WordPress Theme framework (vivaWP) to make a lot of the more complex theme functionality easier to use.
Unlike existing ‘frameworks’ for WordPress, this doesn’t dictate what your theme should look like. It’s a framework to handle the more complex aspects of theming which you include in most templates.
The framework currently includes:
- Partials
See this screencast for details on partials.
- Post preview images
It can become very complex, very quickly when trying to include a ‘preview’ image. viva provides one simple function which handles all the hard stuff for you.
By default the function will return a resized version of the first image from the post. You can easily over-ride this image when you enable ‘Custom Write Panels’. Or, of course, you can choose not to display this image on certain posts.
- Custom Write Panels
Instead of the confusing ‘Custom Fields’, easily create your own panels on the ‘Write/Edit Post’ page in the Dashboard. These provide a ‘front-end’ for your custom fields!
- Theme Options Page
If you’re creating a theme any more complex than a blog, you will likely want to provide buyers a few to customise some aspects of your theme. viva makes it easy to create an options page for your theme, and just as easy if you want to display a drop-down box to choose a page/category from!
- Pagination
Replace all the code in your layouts which provide the pagination links with a simplepagination()call. The function will use the ‘wp-pagenavi’ plugin if installed; otherwise it will fall-back to the default WordPress links.
- Multiple Sidebars
Ok, not exactly something complex, but it is something you include on every theme you create. With viva, it’s all built-in!
- Legacy Comments
Support WordPress versions 2.6 and below, but still make use of 2.7’s pagination and threading abilities. Easily provide a separate comments layout for each version.
Each of these are quickly enabled/disabled depending on what you need for your theme.
Once the framework is complete, you just drop the ‘viva’ folder into your theme’s directory and enter require_once 'viva/system.php'; into functions.php
Any suggestions for extra functionality? Feedback?
PS. I guess you could call this a public version of the ‘Woo Framework’ created by the WooThemes team which they claim massively speeds up the process of coding their themes.

Maybe not something suited for your framework (would probably do better as a plugin) but I thought I’d share 