Category Archives: WordPress

Back to Basics

So for the last six months or so, since my last post here, I’ve been developing many different ways to build themes. I’ve extracted the abstractions and made them even more abstract, then refactored them and created APIs for about anything a developer would want to do. It’s taught be a ton about WordPress theming, and php in general.

In the process, I’ve learned just how good the WordPress API is, and is becoming. Many of the things I was building my own systems for are taken care of with core functions. I’ve also read a bunch of posts, listened to days of podcasts, and watch videos presentations about theming until I my dreams start with if ( have_posts() ) :. Though the temptation to reinvent the wheel very tempting as a developer, I’ve decided it’s much better to follow best practices and standards than create a frankenwork that requires a developer to learn how to use it specifically.

Sacrificing DRY and New API’s for Simplicity

As cool and flexible as my little switch loops ( that’s just what I call a switch within a foreach loop, which is a great tool for building an api  ) are, I don’t want to force developers to grok them. It’s really easy to lose sight of just how abstract and confusing your code is to someone who didn’t write it, and uses different data structures.

So, now that I’ve created frankenthemes ( my personal blog at is still using one ), I’m going back to the basics, and building themes in a fairly standard way. I think in the end, it will be better for users, and anyone who may need to work on them in the future.

Forging Ahead

That said, I’m using a killer new WordPress theme development tool call Forge, a Ruby gem built by The Theme Foundry, to enable you to build WordPress themes using Sass and Coffescript. I’ve used it for a couple of client site projects, and am also working on my first premium theme, which will be a responsive, minimal personal blog theme.

I’m still building sites with Thesis when requested, but I’ve found that once you get theming down, it’s much better to just build a one-of theme from scratch for most sites.

I’ll post here again when my theme is ready, and try to outline some of the decisions made during it’s development.


A New WordPress Theme Framework

I just can’t help it. I don’t have any choice in the matter . . .

Something is prodding at me to write a kick ass theme framework using currently supported HTML5, CSS3, JS libraries, and a nice grid layout framework.

The plan is to build the framework and use it for client sites for a while in house, and in the course of doing so, learn which options would be useful to WordPress designers and developers, while offering the most flexibility and creative freedom.

WordPress Multisite Review

I’ve been doing some development and testing with WordPress 3.* multisite, and I’ve found it has some great uses. I’ve also found a few drawbacks, and things to look out for.

WordPress Multisite with Domain Mapping Chugs

While it’s nice and convenient to be able to deploy a full website on it’s own domain in minutes, and I’ve found some nice ways to use WordPress Multisite with Thesis, it’s a sacrifice. I’ve found the more sites are running, compounded with plugins being used, can cause some sluggish loading even with some standard caching and file minification. The quick access isn’t worth a snappy loading site.

Thesis Skin Development Dream

One of the best uses I’ve found, is development. I build websites with the Thesis Framework, and found a nice Thesis Multisite Hack that saves a ton of time in development. With the way the Thesis custom folder works, designs are very portable. Using the master custom functions method, you have access to all your most used code on any new deployment in the network.

Multiple Location Blogs

Some sites just need more than one blog. Perhaps a client with many geographic locations with all different things going on. Multisite makes this easy, and appropriately separate. There are some unique challenges when integrating with the site as a whole, but nothing a little custom programming can’t get done.

Although I was disappointed with the performance of running multiple domains through the network, it is still fairly new to standard WordPress, and I know the efficiency of the code base is being looked at. I’m sure it will improve.

All in all, multisite is another feature that offers new flexibility and choices for developers, growing the capabilities of WordPress.