If you are an active member of the WordPress ecosystem, over time you will naturally acquire some knowledge only other community members can relate to. Like, who is Matt Mullenweg? What is the WordPress Codex? Who or what is this Yoast everyone keeps talking about?
It can’t be avoided, things will just come up that way.
Therefore, it is only a matter of time before you stumble across a name with biblical connotations—Genesis. Maybe you have already heard about Genesis and think of it as just another theme. However, when you dive deeper, you will quickly notice that it appears to be much more than that.
First of all, you will notice that Genesis is used by some big players on the web.
From Darren Rowse of Problogger fame, to Jay Baer’s Convince and Convert, to WPBeginner, a lot of well-known sites trust this theme over others with their online presence. Next you will find that a very active and loyal community exists around Genesis who swear by the theme and that members include a bunch of well-known names in the WordPress community.
Plus, I can tell you from my own experience that Genesis has become my go-to vehicle for building websites and that I use it for pretty much all my clients and own projects.
After hearing this you might get a little curious. What’s so special about this theme? What does Genesis have that others don’t? That is the question I will try to answer within this article.
Introducing: The Genesis Framework
While many people will speak of the Genesis theme, that’s actually a misnomer. Sure, Genesis has all the same files, behavior and can be installed like any other WordPress theme, however, Genesis should be thought of as a theme framework instead of a theme itself.
What’s the difference?
Well, though it’s possible to use Genesis like any other theme, that’s not its intent. Rather, the goal od Genesis is to function as a basis for child themes. The ultimate parent theme so to speak.
Think of it as a sturdy frame for the picture that is to become your WordPress theme. It holds everything in place and provides stability, yet is not a visible part of the end product.
Similarly, Genesis allows you to build any type of theme on top of it.
Why Should You Use Genesis To Run Your WordPress Site?
Now that we have cleared up the distinction between theme and framework, you might be asking why Genesis? I mean, the idea of a framework is not a new one and there are others out there.
For example, one of the other well-known frameworks is Thesis. It is based on a similar idea, has been around for years, is well supported and has an active community around it.
Yet, of all the frameworks, I found Genesis the most convincing. And here is why.
1. Clean, Secure Code
StudioPress, the team behind the Genesis framework, is constantly working to improve its code base. The framework’s architecture complies with the latest practices in web development including HTML5 and CSS3.
There is also a great emphasis on security and updates are rolled out regularly to keep it airtight. Naturally, you can always update to the newest version without losing your customizations. Child themes, remember?
And finally, Genesis provides responsive design out of the box. In short, the framework is an up-to-date, future-proof piece of software.
2. Lightweight
Although Genesis comes with a host of powerful features (more on that below), it is incredibly lightweight. In fact, unzipped it only occupies about 1MB of space.
The reason is that the designers focus on simplicity and the framework is not overloaded with features just for the sake of having them. Apart from that it is written in lightweight code with as few database requests as possible so as not to bog down your server. Did I mention that it’s only 1MB?
3. Easily Customizable
In order to keep it small, Genesis comes with very few bells and whistles. However, that doesn’t mean that the bells and whistles don’t exist. They are just optional.
After purchase, you gain access to a collection of code snippets that let you easily implement anything you want to your site. Adding an author box or featured image, modifying layouts—everything is possible.
Plus, a number of plugins are available—from the ubiquitous image slider over custom menus and sidebars to social icons, it’s all there. The collection is rounded off by a responsive design testing tool, which helps you with your mobile design.
You don’t have to be a developer to modify Genesis. Even for normal users, the framework offers a host of adjustable settings:
- Six different page layouts that can be set globally and on a page-by-page basis
- Optional breadcrumbs navigation
- Customizable header
- Adjustable background color and image
The framework also comes with its own set of custom widgets:
- Featured posts
- Featured page
- User profile
If you want to take it a step further, there are even third-party products for the non-coding user, especially Design Palette Pro.
4. Chock Full Of Hooks
As you can see, even for the everyday user Genesis is a viable option. However, if you are a developer, that’s when the real party begins.
Let’s take a quick look under the hood, shall we?
One of the things you will quickly notice about Genesis is that the content of normal template files looks completely different than what you might expect. For example, here is the Genesis page.php
file:
[php]<?php
/**
* Genesis Framework.
*
* WARNING: This file is part of the core Genesis Framework. DO NOT edit this file under any circumstances.
* Please do all modifications in the form of a child theme.
*
* @package Genesis\Templates
* @author StudioPress
* @license GPL-2.0+
* @link http://my.studiopress.com/themes/genesis/
*/
//* This file handles pages, but only exists for the sake of child theme forward compatibility.
genesis();[/php]
That’s it. No get_header().
No loop. Just a genesis()
function.
Let’s take a look at what that one function hooks into:
[php]function genesis() {
get_header();
do_action( ‘genesis_before_content_sidebar_wrap’ );
genesis_markup( array(
‘html5’ => ‘<div %s>’,
‘xhtml’ => ‘<div id="content-sidebar-wrap">’,
‘context’ => ‘content-sidebar-wrap’,
) );
do_action( ‘genesis_before_content’ );
genesis_markup( array(
‘html5’ => ‘<main %s>’,
‘xhtml’ => ‘<div id="content" class="hfeed">’,
‘context’ => ‘content’,
) );
do_action( ‘genesis_before_loop’ );
do_action( ‘genesis_loop’ );
do_action( ‘genesis_after_loop’ );
genesis_markup( array(
‘html5’ => ‘</main>’, //* end .content
‘xhtml’ => ‘</div>’, //* end #content
) );
do_action( ‘genesis_after_content’ );
echo ‘</div>’; //* end .content-sidebar-wrap or #content-sidebar-wrap
do_action( ‘genesis_after_content_sidebar_wrap’ );
get_footer();
}[/php]
As you can see, it calls a number of other functions, which then again call other ones. Plus, there are a lot of action hooks (marked by the do_action
directive). Why would anyone build a theme like that?
Being riddled with action and filter hooks is actually one of Genesis’ biggest strengths. It means you can make theme modifications in the form of functions instead of tinkering with theme files and inject them any place you want.
You can check the visual hook guide to get a better understanding.
That way most of your modifications can be found in one central place—functions.php
. You can even write them as custom plugins and switch them on and off from the backend as needed. Sounds good, doesn’t it?
5. Incredible Support System
You know those “one year of support and updates, limited to five sites” offers? Yes, I’m talking about the “developer license” that needs to be renewed every year in order to keep your software up to date.
Solid business model, I know. Nothing wrong with that.
However, how would you like lifetime support and updates for a one-time payment? How about a license to use your new piece of software on an unlimited number of websites?
Even better, right? Good, because that’s what you are getting when you purchase Genesis.
No, I’m not kidding. Buy their software once and the StudioPress support team will be there for you 24/7, no questions asked, no yearly renewal required. And that is for a theme framework whose code base is constantly improved and updated.
Is that awesome customer support or what?
Plus, if by some freak accident, they take a little while to answer your support email, there is still the Genesis forum. The members of this awesome community are more than happy to help those in need.
Also, there are a number of WordPress developers out there who exclusively (or at least mainly) work with Genesis and regularly write articles on the topic. You can find a number of them here, but a quick Google search of “Genesis [problem x]” usually yields some good results.
6. Search Engine Optimized
Besides customizability, search engine friendliness has been another focus during development of Genesis. In fact, Joost de Valk of Yoast SEO is a contributor to the theme framework.
As a consequence, Genesis takes care of the bulk of SEO work for you. The site structure has been optimized for the latest best practices and you can rest easy knowing that your site will automatically make nice with Google.
Apart from that, any user who has ever used an SEO plugin will find some familiar functionality. Genesis lets you add title tags and meta descriptions on a global basis as well as per post or page.
Aside from that, you can also set canonical URLs, robots meta tags, redirects, and more. Archives and other non-essential content are automatically set to noindex
, but you can change it if you have a good reason.
Finally, Genesis uses Schema microdata to provide additional information to search engines and make your pages more appealing in the SERPs.
7. Lots Of Child Themes Readily Available
With Genesis’ strong emphasis on child themes, it is no wonder that StudioPress has a bunch of them on offer. Their themes stretch across different industries and categories from food blogs to real estate websites.
With just a few clicks you can change the entire design of your site without losing its functionality or SEO benefits. The child themes are also a great starting point for developers to create customized versions for client projects.
Additional child themes are available from third parties.
8. Affordable
A theme framework of this caliber must come with a hefty price tag, right? No way they are making all this effort without making sure there is cash flow.
Yet, Genesis is surprisingly affordable.
The framework will set you back $60-$100 depending on whether you throw in a child theme or not. Returning customers get special conditions, so additional themes will cost you just over $30.
There is also the Pro Plus All-Theme Package, which contains Genesis, all existing child themes by StudioPress and, more importantly, all future themes they will put out.
Whatever you decide on, everything comes with lifetime updates and support as well as license for the usage on unlimited sites. Sounds fair if you ask me.
So, Is Genesis For You?
By now you might be asking yourself, if Genesis is so fantastic, why isn’t everyone using it? The truth is, that it’s not for everyone.
Casual users and beginners are probably turned of by the technical knowledge required.
While the designers provide a lot of help and ready-made code, if you are used to changing the design of your site via drag and drop or a multitude of menus, you might be better off going with something else.
Even for slightly more advanced users who can make design changes in their style sheet, there is still a learning curve involved.
To truly make Genesis your own, you need a working knowledge of CSS and know your way around PHP and WordPress functions or at least have the willingness to figure things out.
For example, I wouldn’t fancy myself a developer. I probably couldn’t code a PHP function from scratch to save my life. However, I know enough code to understand what’s going on and modify them to do what I need them to.
That, together with the resources provided by StudioPress and the great community behind Genesis, is enough to build properly working sites with it.
If that sounds like you, I don’t see any reason why you shouldn’t give Genesis a try.
The Genesis Framework In Nutshell
Genesis hasn’t become a household name in the WordPress community for no reason. The theme framework stands for high quality, lean architecture and easy customization.
A wide range of child themes for Genesis makes it easy to build websites for a multitude of purposes. Its strong emphasis on search engine optimization takes a load off of those who don’t know or don’t want to bother with SEO.
However, besides being a solid product, one of Genesis’ main benefits is the awesome support structure behind it. From unlimited support to a strong and helpful community, users will seldom feel left alone.
Finally, even if you are just starting out, Genesis is an investment that is unlikely to break the bank. Especially if you keep in mind that after the initial purchase there are no limits to you using it.
As you might have guessed from the above, I can wholeheartedly recommend it.
Have you worked with Genesis or other frameworks? Any thoughts, opinions, questions? If so, please share in the comments!
11 Comments