Featured Stories

New Responsive WooCommerce theme Sooperstore released

Ok it's pretty embarrassing how long it's been since I posted a blog update here. My last update was early July saying that a new theme was on the way "within a week" if I recall correctly. Well fast forward a week or 8 and I'm happy to announce that Sooperstore has finally been released! We actually released another theme in...

Continue Reading

5 Stunning Responsive WordPress themes

While responsive web design is a relatively new phenomenon, the WordPress theme development ecosystem has exploded with a plethora of stunning responsive WordPress themes over the past few months. It's one of the things that I really love about the WordPress community - the speed at which theme developers themselves are so responsive :)...

Continue Reading

High Performance WordPress – Part 4

Alrighty folks, if you’ve been following along with the High Performance WordPress post series you will by now have experienced the awesomeness of a WordPress website running on nginx. If you’ve not been following along what are you waiting for? Go check out the following posts first: Part 1 - VPS Setup Part 2 -...

Continue Reading

High Performance WordPress Part 3

Hey folks I’m back with Part Three of the High Performance WordPress guide. If you’ve not done so already, be sure to check out Parts One and Part Two which will take you from a position of having no server to a fully configured VPS machine running the kickass nginx web server and mysql - or a LEMP environment as those in...

Continue Reading

Well Hello There!

Hey there thanks for stopping by! ThemesForge is all about WordPress Themes. We don’t make ’em - but we pretty much live ’em, breath ’em, review ’em, rant about ’em and hope to keep you the you the discerning reader fully up to date about what is going on in the WordPress themes ecosystem.

Latest ThemesForge News

WooThemes map the WordPress theme ecosystem

15 February 2011 comment icon1 | Categories: theme news

We missed this last week but thought it was really worth a shout today. WooThemes created a wonderful illustration of their take on the WordPress theme ecosystem. The illustration is called “WooVille” and features a run down of who’s who in the WordPress theme world. It’s clear a lot of time and effort went into creating this. I absolutely love it – it shows the true creativity of the WooTheme team outside of just theme development which is cool.

I’m sure some theme shops may take offence at their representation in WooVille but they really shouldn’t. I love that there is a Starbucks on the ground floor of StudioPress HQ – I’m sure Brian loved it too.

Seriously if you’re interested in getting a visual overview of the WordPress theme ecosystem go check this out immediately.

Getting Started with the Genesis Framework Part 2 – Creating a custom homepage template

07 February 2011 comment icon13 | Categories: featured, tutorials

 

So when we left off with Part 1 of a Getting Started with the Genesis Theme Framework we had taken a look at some of the really basic building blocks of a Genesis child theme and had got you setup with a basic custom child theme. Now it’s time to take us a step forward. Let’s start with our website homepage. As you know most blogs follow a pretty standard layout format -usually a main content area and a single sidebar either to the left or the right of your main content (and most commonly to the right).

Well if you’re building a corporate website you will probably want to break out from that layout for the homepage and come up with something a bit more like a traditional corporate website homepage that has some of the same things that your typical blog layout will have (such as a common header, primary menu and footer) but you’ll probably also want things like a main featured content area and maybe a few more additional homepage featured content areas. What’s more you would probably like to hook these content areas back into WordPress so you can update the content for these directly in WordPress rather than through theme files right? Well the good news is that all that and more is possible with Genesis! What’s more is that it’s really easy to do. Let’s dive in.

The first thing you’ll need to do is create a template for your homepage. Go ahead and fire up your editor of choice and create a new blank file called home.php. Nothing too unusual there – we’ve not chosen the name home.php by accident. Those already familiar with WordPress theme development will already know that home.php is a reserved name as part of the WordPress Template hierarchy. WordPress already knows to look for a home.php file in your theme folder to see if you want to display a different template for your homepage. If it doesn’t find one it falls back to index.php – which you already have. So there’s no special magic Genesis fairy dust in action here – just good ‘ol WordPress fairy dust this time. But now we get to see Genesis in all it’s simplicity and might.

Go ahead and copy the following into home.php

[codesyntax lang=”php”]

<?php get_header(); ?>
<?php genesis_home(); ?>
<?php get_footer(); ?>

[/codesyntax]

Go ahead and refresh your homepage – see what you did right there? In just 3 lines of code you’ll called your websites header, container and footer!

Ok so right now this page is pretty much a pile of crap right? – there’s no content displaying yet. But let’s take a look at what is being displayed, line by line.

The call to get_header() is a standard WordPress action hook that simply calls your websites header. As you’re in a child theme right now, this is in effect the standard Genesis header markup – and there’s lots of nifty goodies in there which we won’t go into today but suffice to say that it’s all good stuff.

The genesis_home() call is a Genesis framework action hook defined in the Genesis parent theme which is an optional hook specifically defined for home.php. There’s nothing much going on here right now.

The get_footer() call is a standard WordPress action hook which calls – yes, you guessed right – your footer markup.

Now let’s go ahead and make things interesting. Just below the genesis_home() call, copy and paste in the following code to your home.php

[codesyntax lang=”php”]

<div id="home-top-bg">
	<div id="home-top">
		<div class="home-top-left">
			<?php if (!dynamic_sidebar('Home Top Left')) : ?>
			<div class="widget">
				<h4><?php _e("Home Top Right", 'genesis'); ?></h4>
				<p><?php _e("This is a widgeted area which is called Home Top Right. It is using the Genesis - Featured Page widget to display what you see in your child theme. To get started, log into your WordPress dashboard, and then go to the Appearance > Widgets screen. There you can drag the Genesis - Featured Page widget into the Home Top widget area on the right hand side.", 'genesis'); ?></p>
			</div>
			<?php endif; ?>
		</div><!-- end .home-top-left -->
		<div class="home-top-right">
			<?php if (!dynamic_sidebar('Home Top Right')) : ?>
			<div class="widget">
                                <?php if( function_exists('wp_cycle') ) : ?>
					<?php wp_cycle(); ?>
				<?php endif; ?>
			</div>
			<?php endif; ?>
		</div><!-- end .home-top-right -->
	</div><!-- end #home-top -->
</div><!-- end #home-top-bg -->
<div id="home-middle-bg">
	<div id="home-middle">
		<div class="home-middle-1">
			<?php if (!dynamic_sidebar('Home Middle #1')) : ?>
			<div class="widget">
				<h4><?php _e("Home Middle #1 Widget", 'genesis'); ?></h4>
				<p><?php _e("This is a widgeted area which is called Home Middle #1. It is using the Genesis - Featured Page widget to display what you see in your child theme. To get started, log into your WordPress dashboard, and then go to the Appearance > Widgets screen. There you can drag the Genesis - Featured Page widget into the Home Middle #1 widget area on the right hand side. To get the image to display, simply upload an image through the media uploader on the edit post screen and publish your page. The Featured Page widget will know to display the post image as long as you select that option in the widget interface.", 'genesis'); ?></p>
			</div>
			<?php endif; ?>
		</div><!-- end .home-middle-1 -->
		<div class="home-middle-2">
			<?php if (!dynamic_sidebar('Home Middle #2')) : ?>
			<div class="widget">
				<h4><?php _e("Home Middle #2 Widget", 'genesis'); ?></h4>
				<p><?php _e("This is a widgeted area which is called Home Middle #2. It is using the Genesis - Featured Page widget to display what you see in your child theme. To get started, log into your WordPress dashboard, and then go to the Appearance > Widgets screen. There you can drag the Genesis - Featured Page widget into the Home Middle #2 widget area on the right hand side. To get the image to display, simply upload an image through the media uploader on the edit post screen and publish your page. The Featured Page widget will know to display the post image as long as you select that option in the widget interface.", 'genesis'); ?></p>
			</div>
			<?php endif; ?>
		</div><!-- end .home-middle-2 -->
		<div class="home-middle-3">
			<?php if (!dynamic_sidebar('Home Middle #3')) : ?>
			<div class="widget">
				<h4><?php _e("Home Middle #3 Widget", 'genesis'); ?></h4>
				<p><?php _e("This is a widgeted area which is called Home Middle #3. It is using the Genesis - Featured Page widget to display what you see in your child theme. To get started, log into your WordPress dashboard, and then go to the Appearance > Widgets screen. There you can drag the Genesis - Featured Page widget into the Home Middle #3 widget area on the right hand side. To get the image to display, simply upload an image through the media uploader on the edit post screen and publish your page. The Featured Page widget will know to display the post image as long as you select that option in the widget interface.", 'genesis'); ?></p>
			</div>
			<?php endif; ?>
		</div><!-- end .home-middle-3 -->
    </div><!-- end #home-middle -->
    <div id="home-midrow">
        		<div class="home-midrow1">
			<?php if (!dynamic_sidebar('Home Middle #4')) : ?>
			<div class="widget">
				<h4><?php _e("Home Middle #4 Widget", 'genesis'); ?></h4>
				<p><?php _e("This is a widgeted area which is called Home Middle #4. It is using the Genesis - Featured Page widget to display what you see in your child theme. To get started, log into your WordPress dashboard, and then go to the Appearance > Widgets screen. There you can drag the Genesis - Featured Page widget into the Home Middle #4 widget area on the right hand side. To get the image to display, simply upload an image through the media uploader on the edit post screen and publish your page. The Featured Page widget will know to display the post image as long as you select that option in the widget interface.", 'genesis'); ?></p>
			</div>
			<?php endif; ?>
		</div><!-- end .home-middle-3 -->
    </div>
</div><!-- end #home-middle-bg -->

[/codesyntax]

Ok that’s a lot of markup but it’s pretty simple and is based on one of the Genesis child themes called Metric. in a nutshell we are adding 2 new divs (home-top-bg and home-middle-bg) to your new homepage template which will house our new homepage specific content areas. Within the first div home-top-bg we then have 2 nested divs, home-top-left and home-top-right. Within home-middle-bg, we have a further series of nested divs which contain the widgets for our new content areas.

Before these widgets actually become active, we’ll need to register them. Go ahead and crack open your functions.php file and add the following to it:

[codesyntax lang=”php”]

// Register widget areas
genesis_register_sidebar(array(
	'name'=>'Home Top Left',
	'description' => 'This is the top left section of the homepage.',
	'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget'  => '</div>',
	'before_title'=>'<h4 class="widgettitle">','after_title'=>'</h4>'
));
genesis_register_sidebar(array(
	'name'=>'Home Top Right',
	'description' => 'This is the top right section of the homepage.',
	'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget'  => '</div>',
	'before_title'=>'<h4 class="widgettitle">','after_title'=>'</h4>'
));
genesis_register_sidebar(array(
	'name'=>'Home Middle #1',
	'description' => 'This is the first column of the middle section of the homepage.',
	'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget'  => '</div>',
	'before_title'=>'<h4 class="widgettitle">','after_title'=>'</h4>'
));
genesis_register_sidebar(array(
	'name'=>'Home Middle #2',
	'description' => 'This is the second column of the middle section of the homepage.',
	'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget'  => '</div>',
	'before_title'=>'<h4 class="widgettitle">','after_title'=>'</h4>'
));
genesis_register_sidebar(array(
	'name'=>'Home Middle #3',
	'description' => 'This is the third column of the middle section of the homepage.',
	'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget'  => '</div>',
	'before_title'=>'<h4 class="widgettitle">','after_title'=>'</h4>'
));
genesis_register_sidebar(array(
	'name'=>'Home Middle #4',
	'description' => 'This is the fourth middle widget of the middle section of the homepage to display just under the other 3 widgets',
	'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget'  => '</div>',
	'before_title'=>'<h4 class="widgettitle">','after_title'=>'</h4>'
));

[/codesyntax]

There’s nothing too unusual going on here. This is pretty much the standard way to register widgets in WordPress – with a small syntax difference; “genesis_register_sidebar” is used instead of just “register_sidebar”
If you refresh your widgets area in WordPress you should now see that you have 6 brand spanking new widget areas available. Given the scope of this tutorial is limited at the moment to the basics of how the Genesis framework works, we’ll leave it to your imagination to see how you style and use these wonderful new widget areas!

Wrapping up Part 2

Today has taken us beyond the basics of how to setup a Genesis child theme and now into creating custom page templates for your child theme. In many ways this process is very similar to normal WordPress theme development but it can trip people up a lot quite quickly so we felt it important to cover this off before delving further into the power of Genesis. It’s important to demonstrate that while you now have a whole array of really cool things you can do that are specific to Genesis, you can still use good ‘ol WordPress functions and standards where appropriate such as creating a custom homepage – don’t forget this!

Next time up we’ll start looking at creating using Genesis hooks to do more things to our new child theme like customising your theme footer and adding additional javascript calls to your theme header for things like Cufon.

Happy coding!

WordPress.com starts offering Commercial WordPress Themes

03 February 2011 comment icon1 | Categories: theme news

Well this is certainly big big news for the WordPress theme community!

Automattic announced earlier today that it is to start offering commercial WordPress themes to wordpress.com users. The story has been picked up amongst all the big tech blogs.

Matt has also posted the back story to the new commercial Marketplace over on themeshaper.

We had suspected early in January that Automattic would be making a big splash in 2011 in the theme community over on the wpcandy.com Future of WordPress themes post and Matt has hinted before that something like this would arrive some day and now it’s here.

For the moment it looks like this is very much a live experiment and I’m sure it won’t be long before it proves to be a roaring success and Automattic will need to start creating their own theme marketplace approval team to cope with the demand to add commercial themes to the marketplace. For the moment 2 excellent themes are being thrown into the wp.com commercial market – Headlines from WooThemes (always LOVED that theme) and Shelf from Theme Foundry.

This news is sure to throw the cat amongst the pigeons in the WordPress theme community. On one hand this new departure of offering commercial WordPress themes to wp.com customers opens up MASSIVE potential opportunities to theme developers (wp.com is likely to have over 20 million active blogs within a few months). On the other there is scope for massive consternation amongst theme developers as to who can get into the marketplace and who cannot.

I think Automattic have a serious job to do to provide further, clear communication to theme developers about how this is all going to work. In fairness, Matt has detailed the back story quite well on themeshaper but I think this one will need regular updates. From looking at the stats on each individual marketplace theme details page, it would look like they’ve only sold about 6 themes in total so far at the time of writing (and that’s assuming that the usage stats on those pages are realtime and and apply to sales – which is a lot of assumptions).

So February is off to a flyer for Automattic! This move now paves the way for Automattic to start adding it’s own commercial themes to the marketplace. That would be a very interesting move as it would potentially open up some good old conflicts of interest between WordPress and it’s theme suppliers.

We truly live in interesting WordPress times!

What will WordPress look like in 5 years?

02 February 2011 comment icon1 | Categories: opinion

Here’s a scary thought.

It’s just over 5 years since the release of WordPress 2.0.1 – holy moly 5 years!

For anyone interested or who’s long enough in the tooth to have been using WordPress back then, here’s a quick reminder of what WordPress 2.0.1 actually looked like.

WordPress 2.0.1

Quaint eh?

Sometimes it’s easy to forget just how far WordPress has come in the past 5 years. I mean back in 2006, WordPress was an excellent blogging tool – but for me, the Joomla project which was also in it’s infancy back then was superior for general website development.

Fast forward to 2011 and things are very very different. WordPress has evolved and grown exponentially in that time and for me it is now pound for pound the best publishing platform/CMS/framework – nothing beats it.

And in a way, this presents as many challenges for WordPress as it does opportunities. Sure there are still definitely shortcomings and weaknesses to WordPress as a pureplay CMS when you compare it against Joomla or Drupal. But the real challenge for WordPress in the next few years is in being able to address those shortcomings while still retaining the simplicity of the core publishing process as it works today. Simply put, users don’t get a handle of any other CMS as quickly as they with WordPress. I’ve seen people struggle for weeks and weeks with Joomla and don’t get me started on Drupal.

So what will WordPress look like 5 years from now? Will it even exist? Clearly WordPress will continue to grow and innovate quickly over the next 5 years – assuming it’s not gobbled up by some corporate behemoth. But in what direction? Does it try to become all things to all mean and risk losing the aforementioned simplicity or does it retain it’s historical roots as a really strong platform for running blogs on?

It’s always difficult to project even 12 months forward in webville – never mind 5 years. But it’s an interesting exercise. While WordPress has changed significantly in the past 5 years – you can still see that it HAS retained it’s simplicity in that time while incorporating more sophisticated features. My view is that this will continue – and needs to for WordPress to retain it’s popularity.

The mobile UI will definitely become increasingly important. Social media features and integration with popular social networks will become standard. I think the process of creating content needs to be further simplified and this is probably where the greatest innovation will happen with the WordPress UI itself. I can foresee much more dynamic and rick user experience when it comes to physically typing up content. I can foresee better, faster image editing abilities. I can foresee the development of really clever content definition and creation interfaces that build of the really good work being done in the commercial side of the business right now by the likes of Crowd Favourite.

Here’s hoping the next 5 are just as fun as these past 5!

Getting Started with the Genesis Theme Framework – Part 1

16 January 2011 comment icon4 | Categories: tutorials

So we’ve been doing a lot of development work with the Genesis Framework from StudioPress over the past few months and I thought I’d share with you some of our experiences in the form of a Getting Started with Genesis tutorial series.

Over the series, we’ll bring you through the basics of creating your first Child theme. So Part 1 starts right now!

How do I setup my first Genesis WordPress child theme?

The first really really important thing to remember is that Genesis is like any other WordPress Parent/child theme relationship. You must have the parent Genesis theme installed before you build your first child theme. For now, we’ll assume you’ve got your hands on Genesis and have installed the parent theme like any other normal WordPress theme.

Right, next step!

The first thing I do is create a new child theme directory inside wp-content/themes – call this directory whatever you want to call your new Child theme – for now let’s go with “myfirstborn”.

Right now you’ve got an empty child theme directory. Let’s go ahead and populate it with the building blocks for your child theme. To do this, I generally copy in the starter files included in the sample Genesis child theme available over on StudioPress – go grab the sample Child theme and copy the contents into myfirstborn.

Ok, now you should have the following in myfirstborn:

  • functions.php
  • screenshot.png
  • style.css
  • images/

The very next thing you need to do is to open style.css. Right at the top of the css file you should see the following:

[codesyntax lang=”php”]

/*
	Theme Name: Sample Child Theme
	Theme URL: http://www.example.com
	Description: This is a sample child theme for the Genesis Framework
	Author: Your Name
	Author URI: http://www.yourdomain.com
	Version: 1.4.1
	Template: genesis
*/

[/codesyntax]

These few lines of code are actually quite important for your child theme as they are what will end up being displayed within the Manage Themes section in WordPress.

Go ahead and update this info to match your child themes name etc. IMPORTANT: Do NOT change the last line. [codesyntax lang=”php”]

Template: genesis

[/codesyntax]

This is the key line in the css file that let’s WordPress know that this is a child theme and what the parent’s name is. Once you’re done make sure you save your style.css file.

Still with us? Ok great, you’ve basically got your child theme setup and ready for action!

The more work you do with Child themes, the more you realise just how powerful they are. Basically you will spend most of your time working with 2 files, functions.php and style.css.

The big temptation with any child theme development in the beginning is to stray back into the parent theme to make some random changes and tweaks. Please don’t – persevere! It’s going to be difficult in the beginning if you’re used to tweaking/hacking normal/parent WordPress themes and being able to see exactly what’s going on right in front of you in the editor. But you’ll find the more you get into the discipline of a child theme framework, the more you will begin to understand and benefit from this way of developing themes. Right now in fact your child theme ONLY has a functions.php and style.css and a bunch of images, but if you activate and load it in WordPress you’ll get a fully working theme – spooky right? How does this work? Well this is where we get to the heart of Parent/Child theme frameworks. In a nutshell, when you load a child theme with just a plain old functions file it will inherit it’s parents characteristics – and that will include the parent handles how it is configured to display the content page being requested. So if it’s your homepage and the parent has a home.php – then the child will load home.php.

This is where we get to the first big stand out feature of Genesis for me – the well developed and easy to understand markup structure. You can the a visual reference of Genesis’s default markup here. The StudioPress guys have clearly invested a lot of time in coming up with a rock solid markup and style structure that should not be taken for granted. With a bit of practice we’ve been able to shorten our theme development lead time from 5 days to about 2 days due to Genesis taking care of a lot of the repetitive tasks theme developers typically would undertake like SEO optimisation, browser testing etc.

So what if I want to change the default markup?

No parent theme no matter how good it is will ever do everything you want it to do. Well the good news is that Genesis has an extemely powerful set of Hooks and Filters that let you customise your child theme virtually any way you want. Check back soon for Part 2 when we start to get a bit more detailed and take a closer look at the real power of the Genesis framework.

Quality Control WordPress Theme

12 January 2011 comment icon8 | Categories: featured, theme news

Siobhan over at WPMU posted the other day about some of her favour plugins and themes of 2010 and included the fantastic Quality Control WordPress theme on her best of post series.

Sadly, according to Siobhan the developer is in the process of passing the theme over to a commercial theme company. The developer, Spencer Finnell used to update his blog on the development of Quality Control, which I would assume he must no longer do. You will also see a link to what looks like the themes new home at http://getqualitycontrol.com/

While the theme has since been removed from the official WordPress theme directory, it is still available in the official WordPress subversion repository and whoever is running getqualitycontrol.com has even included the subversion command to check the theme out on the homepage of qualitycontrol.com

As the theme was released under the GPL license there is nothing stopping anyone from running the following command from their favourite SVN client

$ svn co http://themes.svn.wordpress.org/quality-control/0.1.5/

to get their hands on the Quality Control.

There’s also a newer 0.2 version available at:

$ svn co http://themes.svn.wordpress.org/quality-control/0.2/

As some folks on Siobhan’s post were asking me to email them a copy or give them further instructions I thought I’d help by zipping up the 0.2 release and making available to download from themesforge. So here it is checked out from the official theme repository untouched in all it’s glory!

Download Quality Control 0.2 – 132kb

NOTE: I do not provide support for this WordPress theme. I’m just helping people who can’t check it out from the repository for whatever reason.

I did install the WordPress theme and I have to say it’s extremely impressive. It didn’t take long to setup properly and you’ll find some nice FAQ’s here which should help you set it up correctly.

I don’t know what Spencer had left to do with 0.2 before he considered it ready for production use so please do not use this theme in a production environment unless you take full responsibility for it and know what you’re doing!

I look forward to seeing what happens with this theme in the future.

The anatomy of a WordPress theme

11 January 2011 comment icon1 | Categories: theme news

Congratulations to Yoast for putting together a fantastic post detailing the anatomy of a WordPress theme. In one nice infographic Yoast basically lays out the building blocks of every parent WordPress theme. It explains the role of each file simply and clearly and while it seems like something that should have been around a long time ago on the WordPress site itself – it wasn’t and I think it will be a big help for anyone getting started with WordPress theme development.

The case for a better WordPress theme uploader

11 January 2011 comment icon1 | Categories: theme news

Today saw a fantastic post from Siobhan over at WPMU about why you should never rely on google search results when it comes to downloading WordPress themes. Seriously guys, this post is a first class education for anyone who downloads and plays around with WordPress themes – free or premium – and the things you need to be on the lookout for. I knew that dodgy practices were widespread but the findings of Siobhan’s research are astonishing. 8 of the top 10 sites in Google’s search results for “free wordpress themes” contained encrytped dodgy code and/or very poor theme standards.

Google gets over 200,000 searches per month for the phrase “free wordpress themes” (as estimated by Google Adwords traffic estimator). Clearly, this is an extremely popular search phrase. If we are to assume that a good percentage of people searching this phrase don’t look beyond the top 10 results (and search behaviour statistics would suggest 40% of people don’t even look beyond the first result) then I think it’s safe to assume that a LOT of people are running WordPress themes that contain crappy, dodgy or worst case scenario – incredibly dangerous code – on their self hosted WordPress sites.

I think this is an incredibly concerning situation that I feel needs to be rooted out at the source – the WordPress theme uploader. It’s reasonably safe to assume that WordPress themes contained in the official theme directory are safe. But the uploader at the moment will pretty much let anyone install any kind of theme they want – regardless of the source. There are no built-in scans to check the integrity of the theme being uploaded and therefore this allows the market for dodgy themes to flourish as those pawning these dodgy themes know that your average WordPress user has no idea how to check the integrity of the WordPress theme they are installing. Given we already have some excellent automated tools which do a fantastic job of partially automating these integrity checks, I think it’s high time that the WordPress dev team do something about this and incorporate and extend these tools right into the WordPress core – it’s now too important not to have these in core. I wouldn’t imagine it would be too difficult to significantly improve the protection of the millions of WordPress self hosted sites out there by implementing a beefed up theme uploader.

Anyway, if you have 10 minutes to spare go check out Siobhan’s post. Great work Siobhan!

Celebs using WordPress

08 January 2011 comment icon1 | Categories: best of

WPLift have put together a nice list of Celebrities currently using WordPress to power their websites. This list features some sites we included in our list of Massive sites powered by WordPress from November.

I particularly like Rocky’s website (I mean Sly Stallone of course).

Theme Tip 24 – Our WordPress Theme 2010 Review

06 January 2011 comment icon1 | Categories: 24ways

Well looky here we’ve hit our 24th Theme Tip of December just in time for Christmas!

(UPDATE: Ok yes, it’s now the 6th of January 2011 and for some bloody reason this post never made it live on Christmas but we’re gonna still pretend it’s Christmas ok!)

It’s been a bit of a roller coaster year for WordPress in 2010. Lots of things happened in the WordPress community in general. We got WordPress 3.0 which has been a sensation for me. We got a boatload of theme frameworks maturing to a point where I see this as being the real future of WordPress theme development. We had our very own mexican standoff between Matt and Chris about the ever controversial GPL debate. Actually it was less of a mexican standoff and more of a storm in a teacup which Chris finally seeing the light and going GPL with Thesis – kinda. Hopefully this puts the GPL debate firmly behind us although I don’t think it will.

As the year draws to a close I think we only now starting to see some of the more powerful features of late 2.X and 3.X releases of WordPress to be fully exploited by theme developers. Earlier in the year we had Justin Tadlock once again leading the way with this wonderful demonstration of the power of custom post types by developing a full frickin forum using them. Justin hasn’t released the code publicly yet – I think he’s waiting to see how bbPress progresses – I’d love to dig into it someday if/when it does see the light of day.

Another wonderful example of the power of custom post types and taxonomies is the brilliant Quality Control theme which you can demo over at http://getqualitycontrol.com/ and which you can also checkout with the WordPress Theme repository here if you have some basic SVN skills: http://themes.svn.wordpress.org/quality-control/0.2/

NOTE: I’m unsure of the status of Quality Control at this point as it seems it might be going commercial at some point in the near future and I’m unsure if 0.2 is ready for production use. Nevertheless, it’s another example of just how powerful WordPress has become but for which we’ve not seen a huge amount of innovation with yet. (Commercial Exception – WooThemes Listing theme)

I predict big things for this space in 2011.

Other highlights for this year included:

  • The launch and growth of the Genesis Framework
  • The launch of Carrington Build
  • Automattic getting into the themes game in a big way with the hiring of Ian Stewart and several others since (and a few more coming soon).
  • The quality of some free WordPress themes improved dramatically in 2010, particularly those that were released by Smashing Mag.
  • The sheer volume of both free and commercial WordPress themes out there exploded – so while the bar has been set higher by some free themes, there are lots more crap and more worryingly more dangerous ones out there now.

So there you have it – a quick and by no means comprehensive review of 2010 in WordPress theme land.

This also concludes our 24 Theme Tips series. It’s been a joy to produce this series this year and I look forward to running it again next December!