March 26, 2009

How complex, or complicated, does a theme need to be to offer all the possible solutions that you want? I think it is possible to do it very very simply, with only one template page.

There are three widget based plugins which I think provide functionality so powerful that it is possible to create one index.php file with dynamic sidebars in key positions and to use widgets for everything else. Here are those plugins:

Fun with theme widgets

This is one of mine, and by far the simplest and least impressive of the three, but, it provides an incredibly simple way for theme builders or individuals to create their own widgets out of snippets of code.

You can find out more about Fun with theme widgets here

Query posts widget plugin

This plugin by Justin Tadlock is most excellent. It allows you to include a list of posts by selecting the selection criteria. I see no reason why this shouldn’t be used instead of hard coding the page lists into the theme itself. If it supports paging and templates then even better.

You can read more about Justin Tadlock’s Query post widget plugin here.

Widget context

Kaspars widget context plugin adds the option to any widget to choose when it is displayed, i.e. home page, single post pages, when the URL contains certain characters etc. This is the killer plugin as, combined with the two above, it is no longer necessary to create individual post pages. Simply decide which widgets should go where.

You can read more about Kaspar’s Widget Context plugin here.

Presetting widgets

It isn’t a plugin, but any theme using these combinations of plugins and widgets really needs the option to preset some widgets. Ptah Dunbar recently wrote a post explaining how to preset widgets from within a theme so this is a post well worth checking out.

Are these widgets the next step toward the ultimate WordPress theme system? I don’t know; what do you think?



Wordpress title showing space?
no comment on page 1371

Wordpress fun?
one comment on page 1376

Live blogging plugin?
4 comments on page 1258

Wordpress 3 admin speed up?
4 comments on page 1321

Framework photoshop?
3 comments on page 296

Fun wp plugins?
one comment on page 1376

Habari vs wordpress?
12 comments on page 440

Wp tags vs categories?
12 comments on page 7

Wordpress rss seo?
one comment on page 1361

Photo albums html5?
6 comments on page 1305

Wordpress chat?
no comment on page 1308

Wordpress exif data?
12 comments on page 230

Css sidear tab?
2 comments on page 336

Wordpress theme html5 blueprint?
6 comments on page 1305

Wordpress shortcode in plugin?
no comment on page 236

Html 50 photo album?
6 comments on page 1305

Get the post attachement?
24 comments on page 1065

Wordpress plugin development 30?
one comment on page 1373

Wordpress plugin development 30?
one comment on page 1373

Disqus formatting?
7 comments on page 1175

Html5 photoalbum?
6 comments on page 1305

Html5 photoalbum?
6 comments on page 1305

Wordpress fun?
one comment on page 1376

Fun wordpress plugins?
one comment on page 1376

Url shortener ideas?
4 comments on page 1190

Url shortener ideas?
4 comments on page 1190

Html 5 photo gallery?
6 comments on page 1305

Multiple post navigation?
no comment on page 1147

Html5 photo galleries?
6 comments on page 1305

Adding images to a wordpress 3 post?
24 comments on page 1065

Html5 photo gallery code?
6 comments on page 1305

Wordpress multiple blog master?
one comment on page 1376

Wordpress 3 tableprefix?
one comment on page 1376

Wordpress 3 tableprefix?
2 comments on page 1374

Using wordpress as a framework?
2 comments on page 335

Single post image size?
24 comments on page 1065

Get featured image src wordpress?
24 comments on page 1065

Disqus wordpress mu?
7 comments on page 1175

Wpgetattachmentimagesrc size?
24 comments on page 1065

Image gallery html 5?
6 comments on page 1305

Wordpress theimage?
24 comments on page 1065
  every 1744s, 1s ago, in 0.03s.
 __
(__)
   `
 mercime

Thank you for the post. The idea tickles the imagination. It's do-able in own theme playground but could be stressful for sites to be turned over to clients. Imagine Tools > Upgrade to WP 2.8 or later WP 3.0 and widgets not compatible – egads, calls from irate clients :-) Still, Thx again.

 __
(__)
   `
 Justin Tadlock

I've been considering building this very theme. When I created the Query Posts widget, it was the first step toward this goal. Basically, it was an experiment to see if it was possible to really create a completely widgetized theme.

A very basic structure, maybe some extra code to handle the header stuff, code to handle pagination, a few extra widgets, and the addition of the WP hooks would be all that's needed to make one of the most customizable WP themes around.

 __
(__)
   `
 Will Anderson

This is an interesting approach to be sure. I actually often tend toward the other side, going ahead and creating a custom template page for everything. I feel this makes the code more readable, but I might try something more like this next time I develop a theme. It's a cool idea.


0.01s