Going All the Way: GPL’ing Our Theme


If you’ve been vising our site for awhile now (thanks, by the way), you’ve certainly noticed that things have been looking a little less…terrible, as of late. We’ve been working on turning “The Powerbase” into a more modern and aesthetically pleasing site, and the recent change of theme is a major step in that direction.

While we’re certainly happy with the look and feel of the site, what we think really makes our current setup special is that we’re now able to release our WordPress theme as a GPL project.

What did you expect?

The Dark Ages

During our early years, the layout for the site was unpopular, to say the least. When asked directly, most people we polled didn’t like the layout at all, and we believed it to be a major reason we weren’t getting much repeat traffic. In an effort to curb this, we purchased the commercial WordPress theme, Avenue.

Avenue did look pretty good, but we started to notice problems right away. There were some bugs and missing functions in the theme that bothered us, but worse, it appeared that development had stopped (or at least stagnated) on it. Even as of this writing, the last update to the theme was in October of 2012.

So naturally, we decided to start fixing some of the issues ourselves.

Adding author images was one of the first improvements
Adding author images was one of the first improvements.

After awhile, our theme had deviated significantly from the stock Avenue, and there was some concern about how we would gracefully handle an upstream update if one ever came (for the record, the theme was never updated in the entire time we ran it here on the site).

The social buttons in the header were a popular addition.
The social buttons in the header were a popular addition.

Knowing first hand how frustrating it was to purchase a theme only to realize it wasn’t complete and that support was essentially non-existent, we wanted to be able to take our modified version of the theme and release it publicly so others could benefit.

But unfortunately, we couldn’t. The licensing was unclear, and even though it appeared that Avenue was abandoned by its developers, that didn’t give us a pass to start distributing our own build of it for free. We couldn’t get anyone to answer through their support email address, but something told us the lines of communication would spring to life (and not in a good way) once we started giving their paid theme away for free .

Frustrated that we couldn’t distribute our refined version of Avenue, and still looking to improve the site’s look and feel, we started to look for yet another theme that would fit us a bit better.

DW Focus

After a bit of searching, we came across DW Focus by DesignWall. This theme looked even better than Avenue, supported a lot of interesting features (like built-in mobile and tablet UI’s), and best of all, was licensed under the GPLv2. Seeing this, we mashed the “Buy Now” button down as hard as possible and installed our new theme. But there was a bit of a problem.

Even though DW Focus was advertised as a 1.0 release, it was clearly not finished.

Now, small glitches and bugs are to be expected. We wouldn’t have minded that. But with DW Focus, whole swaths of functionality were missing, or worse, completely fake.

Don't these look cool?
Don’t these look cool?

Take, for example, the “Sharing” panel displayed on the right. That looks nice and professional, doesn’t it? Counters to show how many shares you have, links to email the article to friends, etc, etc. One would assume, seeing such a thing in the live preview of the theme, that those little numbers would increment with how many shares you got on those social networks. Or that clicking “Email this article” might, in fact, email the article to somebody. Seems a natural enough assumption, no?

Well, as it turns out, those counters are all statically set at “0”. There was absolutely no code in the theme to make those numbers ever change, they were just for show. But a handful of zeros make for a rather embarrassing show, so everyone who installed DW Focus would have a site where it appeared nobody ever shared any of their content.

Asking support about this function only led to “It will be implemented later on” sorts of responses, with no clear timetable on when that would actually be happening.

We asked support about other issues as well, such as adding an icon for Google+ to the theme’s social bar. In this case, support gave us code we were instructed to place in the theme, but the code didn’t work. It’s syntax wasn’t even correct, it would immediately cause errors when inserted into the live theme.

These were some pretty serious issues, and frankly, we were left more than a little disappointed with the theme and its developers. Selling a clearly half-finished theme as a 1.0 and charging a premium price is questionable to begin with, but when you neglect to mention that the features prominently displayed in your preview don’t actually work, you’re bordering on a scam.

Fork This

There was no question that DW Focus had the look we were going for, and the stuff that was actually working was great. So we didn’t want to bail on the theme just because of the problems we were having. Instead, inspired by our previous bout of theme modifications, we decided to do what any lovers of FOSS would do when presented with a flawed piece of software covered under the GPL…we forked it.

Our modified version of the DW Focus theme is available on GitHub, and we invite others to look at the modifications we’ve made, submit any problems you might be having, and (if you’re really, really, nice) send us some patches for the things we haven’t sorted out yet.

A few of the notable changes we’ve made so far:

  • Add author name and picture to each post
  • Remove non-functional Social counters
  • Add Google+ to hover-over social icons
  • Fixed “Email this article” button

One thing we want to make very clear though, is that we are not trying to take over development of DW Focus, or undermine DesignWall’s paid theme business. Rather, we would much prefer the enhancements and changes we’ve made to DW Focus get integrated into the upstream, so that everyone can benefit.

About Tom Nardi

Tom is a Network Engineer with focus on GNU/Linux and open source software. He is a frequent submitter to "2600", and maintains a personal site of his projects and areas of research at: www.digifail.com .