Building a WordPress Site: Theme Selection

New site, new theme. Simple as that, right? Right…? Bueller…?

Before I discuss themes, I need to declare the #1 self-imposed rule during this site’s redeisgn: do not do a Big Bang approach.

This is because past incarnations of this site involved big ideas, all of which I wanted to see implemented at once.  This led to a never-ending coding cycle that kept me from writing actual blog content.  This time around, I wasn’t going to be slowed down from my set goal of a two-week project cycle, even if it meant some of my ultimate ideas would have to come in the future.

For my rule to work, I had to make quick decisions and roll with them.  This led me to spend just 15 minutes looking for a new theme in the WordPress theme directory.  I quickly stumbled upon Crowd Favorite‘s Carrington theme and it proved to be a winner for several reasons:

  • It is cutting edge. Carrington is incredibly young in dog years.  Instead of your standard WordPress template files, it provides an engine to piece together the user presentation from a variety of sub-templates, the selection of which is defined by the viewing context.  For example, viewing the About page vs. a Category archive could show you different sidebars, content areas, headers, and more, depending on how you design it.  You can even control what’s displayed when viewing posts by different authors.
  • Sub-template file organization is logical. As mentioned above, many sub-templates combine to make full templates.  These sub-templates are stored in context-specific folders.  For example, the various sub-templates which display post content are in the “content” directory.  There are also folders for other elements: “sidebar”, “loop”, “header”, etc.
  • Customization was quick and easy. I am addicted to changing any code which resides on my site.  For WordPress, this is because the themes and plugins I use only meet 90% of my needs, and I have to supply the rest.  Making changes to Carrington was easy.  I housed my custom code in custom sub-templates outside the core theme files.  Also, these smaller chunks of code were much easier to handle during the debugging process than a larger template file.
  • Upkeep should be a piece of cake. As noted above, my custom code is contained within custom sub-templates.  Since I barely touched the core files, upgrading Carrington down the line should be as simple as overwriting the existing core files with the latest release.  This is a huge improvement over my previous blog designs, which would require side-by-side comparison between new and existing files then manual reapplication of my code.
  • The price is right. In other words, it was free!

Actually, I shouldn’t brag so much about the theme being free.  The developers at Crowd Favorite have earned my gratitude for providing such a robust framework while only asking for attribution in return.  The matching documentation on their website was also quite useful.  Besides the few hours it took me to get oriented after first installing it, Carrington proved to be an easy theme framework to work with.

At some point in the future, I will skin Carrington to appear like the site I want vs. looking like all other Carrington sites out there. This is one of the many things I’ve put off to the future in order to get rolling today.

That’s the skinny on themes.  My next post will compare & contrast use of Pages and Categories between my current and old designs.

Building a WordPress Site: Introduction

In a separate Post, my blog yelled, “Hello World” as I launched its redesign.  The amount of time it took me to make that announcement was less than 1% of the time it took me to recreate my website.

Rather than taking my old site and upgrading it to use new themes and plugins, I went with the more favorable approach of nuking it all and re-implementing from scratch.

I could have performed an upgrade on my existing blog, but going forward with a re-implementation provided me with far more advantages than drawbacks.  The former include:

  • I now have a true blank slate.  No more clutter of half-finished posts and spit-and-waddle code patches distracting Ol’ Captain OCD here
  • My speed to publish has been improved.  In addition to taking advantage of the New Post panel in the latest WordPress release, I’ve also been able to setup custom widgets to enter associated data from my custom Taxonomies (more on this later)
  • WordPress core file updates can be performed Day One.  My previous mess of custom code would have surely been broken by a major WordPress upgrade, so I am safe (for now)
  • Security has been improved.  For example, I no longer have a WordPress account called “admin”, which was a vulnerability that required an unexpected security release.  Database tables now have a custom prefix
  • I can integrate more easily with social media. My old site format was heavily centered around writing long-form non-fiction instead of smaller, more-frequent posts.  Thanks to my design shift, my shorter posts can cross-post more easily to platforms like Twitter, Facebook, etc.

In the end, I’ve come away with a leaner, quicker blog, capable of supporting a variety of material, not just a few types.  For you stats hounds, here’s a rundown of the numbers:

Object/Element Old Site Design New Site Design Details
Days in Development Unknown 3 total work days (24 hours) All work was performed in 30-60 minute chunks over the course of several lunch breaks and late-night DVR viewings
Posts 80 0 Remember the blank slate part? I may migrate some content from the old site, but overall I plan to proceed from scratch
Pages 41 3 One Page supports a Contact form, just like on the old design. The other two support my custom Taxonomies (more on this later)
Categories 49 2 Categories drove a book layout on my old design, complete with multiple Chapters. Book tructure is now handled using the delivered WordPress Page hierarchy
Tags 238 0 I went insane with Tags on the old design, making them useless for searching. On the new design, I will hopefully be more prudent and manage them better
Custom Taxonomies 0 3 Custom taxonomies are key to driving my Stories framework (more on this later)
Plugins 10 24 This number increased so dramatically because I am using plugins to handle minor tasks I had previously done via custom code. This allows me to leverage code (within the plugins) which has been road-tested by others

In future posts, I’ll deep-dive into some details on my design, including:

  • Thoughts on the Carrington Theme I am using, and why I chose it over other worthy candidates
  • A detailed compare/contrast between my old and current use of Categories and Pages
  • A walk-through of my custom Taxonomies and how they are driving user-friendly workflow in my new design
  • Quick-hits regarding the Plugins I am using
  • How I created a migration plan that walked me through the dangers of converting a live production site from one design to another
  • Future plans for this blog, mostly centered around what I’ll be writing but also touching upon some fun development I will also tinker with