What is a WordPress Theme Framework?
The WordPress Codex, currently give two descriptions for the phase “Theme Framework”:
- A “drop-in” code library that is used to facilitate development of a Theme.
- A stand-alone base/starter Theme that is intended either to be “forked” into another Theme, or else to be used as a Parent Theme template.
What Is a Code Library?
The WordPress Codex describes these Libraries as collections of code are included with the Theme, and “bootstrapped” to the Theme by being included in the Theme’s functions.php file.
- A “drop-in” code library framework is not a stand-alone Theme.
- Such frameworks cannot be installed nor used as a stand-alone Theme.
What is a Parent Theme?
Parent Themes need to contain the theme design, functionality and templates required for it to run on WordPress.
Unless it is specified as a Child Theme (or a Framework) most themes available in the WordPress Theme Repository are stand-alone Parent Themes.
What is a Child Theme?
A WordPress child theme is a theme that inherits the functionality of another theme, called the parent theme.
Child themes allow you to modify, or add to the functionality of that parent theme.
A child theme is the safest and easiest way to modify an existing theme, whether you want to make a few tiny changes or extensive changes. Instead of modifying the theme files directly, you can create a child theme and override within.
Source: WordPress Codex
Most experienced WordPress Developers believe you should have a child theme running on your WordPress website.
WordPress Developers create a child theme if they intend to make any custom changes.
If you do not use a child theme for site design or functionality changes, future WordPress updates can be an unpleasant, and sometimes costly experience.
How do Frameworks differ from a Parent Theme or Child Theme?
When we try to reconcile the difference between the second WordPress Codex definition of a WordPress Framework —
“A stand-alone base/starter Theme that is intended either to be forked into another Theme, or else to be used as a Parent Theme template” — and that of a traditional standalone Parent Theme it can get confusing.
The key word to to focus on on is — template.
A Parent Theme template is not designed to be a stand-alone theme.
A Parent Theme template is a starting point for further development, designed to use an additional Child Theme to build a WordPress compatible theme.
Why use a Genesis Framework instead of a Parent Theme?
The Genesis Framework is maintained by a group of developers from StudioPress. The framework is consistently updated to reflect best practices for coding and is always compatible with the latest version of WordPress.
Genesis will almost entirely separate functionality from design, packing all of its extensive functionality into the framework, and additional plugins, and depend almost entirely on a Child Theme for its design.
A standalone Parent Themeoffers more limited functionality, design and templates all in one.
This gives you a theme that meets your limited requirements, but is not as flexible when it comes to advanced functionality and design customizations.
Who Should Use a Genesis Framework?
The Genesis Framework is a great productivity tool for web developers/designers who want a faster way to build more powerful and feature-rich websites with little to no custom development.
StudioPress developed a helpful analogy to describe their framework in relation to WordPress:
“WordPress is like the engine; A framework is the body and internal features/functions; and then the Child Theme is your site’s paint job and exterior design elements.”
If putting on a “different coat of paint”— instead of coding everything from the ground up for every job, Genesis Developers/Designers can delight clients with beautiful, cost effective sites, that are “future-proofed.”
The Genesis Frame work may not be just for developers and designers anymore…
As the documentation and support has improved and the Genesis development community has grown, the Genesis framework has become less about providing developers with a lean core of functionality and more about empowering the do-it-my-self-site Owners and Managers in the WordPress community at large.
Genesis framework can be a good tool for publishers, bloggers and any other type of end user who wants a powerful yet “future-proofed” WordPress website without extensive development.
What you should know about the Genesis Framework?
You may find it difficult to customize a Genesis child theme if you don’t know CSS and PHP.
Genesis offers scores of child themes for purchase from the StudioPress site.
Most are very attractive and may be a perfect fit for your site.
But, if “Ready-to-Wear” is not for you — plan on customizing your Genesis theme.
Note: Genesis does not provide you with a huge options panel where you can select fonts and colors.
What you need to know about Genesis Hooks
Think of your Genesis site’s structure as a map.
No matter what child theme you’re using, there are certain areas included in all Genesis sites
– header
– primary and secondary navigation
– content area
– sidebar
– footer, etc.
Note: Hooks exist in all WordPress websites —they are not unique to the Genesis framework
However, Genesis has its own hooks, that are basically the same regardless of what child theme you use.
If you work with Genesis regularly, it makes sense to know and understand the hooks it uses so you can apply changes to any child theme.
What you should love about the Genesis Framework
The Genesis framework is lean and fast with a focus on SEO, speed, security, site “future-proofing” and flexible design options.
StudioPress Child Themes are designed to create beautiful blogs that are secure, optimized for SEO and offer good tools converting visitors into email signups
Studio Press offers GREAT Genesis Support
StudioPress offers an amazing about of FREE information. New users can visit site and use the SEARCH TOOL to ask most “How do I…?” and find tons of step-by-step tutorials to guide you through the process. Genesis users can also post on the StudioPress support forums and a moderator will answer your questions.
You can join Genesis communities on Facebook, Google+, and even Twitter where you can get help and share your experiences.
The wonderful Carrie Dils runs a POD Cast Genesis Office Hours every Thursday where she interviews leaders in the Genesis community.
There are ways to customize Genesis with out knowing a lot of PHP and CSS
Prose child theme – The Prose child theme is the only Genesis child theme with an integrated options panel. That said, it has not been optimized for HTML5 as of this writing (though it is mobile responsive and still works/looks just fine).
Genesis Design Palette Pro – This premium plugin (single site – $49.00) gives you the ability to select different parts of your site and change padding, margins, colors, fonts, etc. It’s extremely easy to use and requires no coding whatsoever.
Genesis Extender – This is another premium plugin (Single Site – $39.00) that allows you to add custom functions and styles to Genesis child themes. Extender was recently updated with some new features and an interface that is more intuitive, and it works with any Genesis child theme.
Dynamik Website Builder – Dynamik is nearly identical to Genesis Extender (they’re made by the same company) but it is a child theme instead of a plugin. This means you don’t have to purchase additional child themes – Dynamik lets you create your own, and you can even export the themes you create to use on other sites. (Single Site – $59.00)
Prose child theme – The Prose child theme is the only Genesis child theme with an integrated options panel. That said, it has not been optimized for HTML5 as of this writing (though it is mobile responsive and still works/looks just fine).
Hopefully this session gave you the information you need to be aware before you purchase the Genesis framework.
Very nice, thanks!