Every once in a while, I’ll run across a site running Genesis. Actually, it’s more than every once in a while, but what do you expect when so many people use Genesis?! But anyway, I’ll visit a site running Genesis and notice that they’re running Genesis as the active theme, instead of using a child theme. I can’t help but shake my head, because not only is this incredibly risky, but we actively recommend that you DO NOT run Genesis as the active theme on any site.
But why not? There are several reasons, actually.
A child theme allows you to customize
Whenever you read a tutorial for adding or removing things from your site output, it’s likely that the tutorial will says “put this code in your child theme’s functions.php file.” It’s hard to do that when you’re not running a child theme.
Also, child themes allow you to run your own CSS file. 100% custom, if you want. Make the site look exactly how you want it to look, or use one of the dozens of child themes we sell here on StudioPress.
The point is that you’re going to have a very difficult time customizing Genesis without a child theme.
A child theme protects your customizations
Once you’re done customizing your site, you probably want to protect all that hard work from being overwritten when we release an update to Genesis … and we’re always updating Genesis. Even when we’re not in an active development cycle, we’re still pushing updates to Genesis and preparing maintenance releases. And if we decide to change things in the default Genesis CSS, you want to be sure that your site design stays intact.
A child theme keeps all your custom code and CSS safely in its own folder, so Genesis can be updated without affecting the look of your site.
Your site will show an error if you activate Genesis
As of Genesis 2.3, if you activate Genesis directly, we’re going to show a warning on your dashboard that tells you to use a child theme. Do you really want to stare at that warning every time you log in to your site? Of course not! So go download the sample child theme and get rid of that warning.
It’s just good practice
Really, this all boils down to separating the core functionality of the framework from the customizations and design of your site.
Let the framework be a framework. And let your creativity and custom code stay where it should stay … safely in a child theme.
Should I @import the Genesis style.css
We’ve gotten this question many times over the years, and we answer the same thing every time.
Genesis is not a CSS framework. And over time, the Genesis stylesheet has changed a lot. If you’re dynamically using the Genesis CSS as the base for your site’s CSS, sooner or later you’re site is going to look broken.
Just take a look at how the default Genesis style has changed over the years.
Always start with a fresh stylesheet in your child theme. Not only will this perform better, but it will keep all your CSS safe from any changes we make in Genesis.