Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialKarin S
1,405 PointsWhy use Genesis instead of customizing a reputable theme?
I trying to decide whether to use Genesis or just customizing a good reputable responsive theme? I've read lots of articles about this and being a newbie I'm still on the fence. The only thing is see is that you can update the wordpress core code and not worry, but I'm not sure that is enough to justify the expense or extra work learning Genesis?
1 Answer
Brian Hayes
20,986 PointsThe idea of Genesis is for the parent theme that is Genesis to handle a lot of the major functions and markup generation while the Child theme can handle customizations and styling.
The entire idea of this becomes that in almost all cases a child theme will not be easily broken by updating the parent theme.
This also means that you have to worry less about things such as good semantic HTML markup that boosts SEO, utilization of WordPress functions for generating meta, all the clean up that you usually have to go through in developing a theme from scratch, security, speed, and a few other things.
Also, thanks to all of the action and filter hooks that come with genesis, customizing genesis is very easy without having to replace parts of it.
Now, on to a theme that is meant to stand on its own. The problem here is that at no point do these themes take into account child themes, and even if they do to some degree, depending on how much your child theme customizes, extends, or overwrites the parent theme, things are much more liable to break with new versions of the parent theme.
Now it is possible to get away with small tweaks and additions, but major functionality addons can lead to a broken site the next time you update.
On another note, many "Premium" themes come with all kinds of extra functionality built into them that should be in a plugin instead. Widgets, and custom post types are just a couple examples.
This is why, most developers will create a theme that handles style and structure of the website, and a site functions plugin that handles functionality specific to the site and not dependent on layout or style.
Thanks to all of this extra bundled functionality, things have an even greater chance of braking depending on what exactly your child theme customizes.
Genesis is a framework that is not meant to stand alone, whereas premium themes, like those from Evanto, are meant to stand on their own, and give little to no thought about ease of customization via child themes.
Karin S
1,405 PointsKarin S
1,405 PointsThank you Joey for your well thought out answer. I'm glad you replied because I feel like I'm going in circles trying to decide on a good parent theme to customize.
I had a few additional questions: Is the documentation for Genesis clear so that you know when should use a Genesis function instead of a wp function? Also, I just learned some of the basics of customizing wordpress templates and creating custom fields for posts etc. Will I have to relearn this basic knowledge? How long did it take you to learn Genesis (about)?
I'm hesitant to add a framework as an additional layer both to learn and to use.
THanks! :)
Brian Hayes
20,986 PointsBrian Hayes
20,986 PointsI learned my way around Genesis, enough to work with it anyway, in about a week or so. There is decent documentation, as well as helpful snippets on the StudioPress site. I would also suggest a plugin called Genesis Visual Hook Guide as it is very useful for finding where to hook different pieces of code into.
As for relearning stuff, really, the only major difference with Genesis is how you register and display widget areas, and how you create page templates using the Genesis loop and action hooks from Genesis.
Genesis can be a great way to speed up development once you get the hang of it.
Still remember that in the end you're still working with WordPress, so most things that work for WordPress will end up working with Genesis.