The debate about whether to use a WordPress Framework or not is as strong as ever in the WordPress community and whilst opinions and framework reviews are plentiful online, many of these articles often fail to distinguish which types of frameworks may be useful right for which types of user (if any). All too often you just get a list of which recommended wordpress frameworks without any distinction between user types.
In this article, I will try and break down the types of wordpress frameworks available, give their pros and cons for different types of users who may be considering purchasing one and finally provide a recommendation for specific frameworks to use depending on your needs.
So let’s start with the basics and briefly describe what a wordpress framework is. From a technical software perspective, a framework is defined as:
‘an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software. A software framework is a universal, reusable software platform to develop applications, products and solutions.‘
In the world of wordpress, the term ‘theme framework’ started coming to fore in 2009. Since then the term has been adopted by a wide variety of similar but distinct wordpress related products much to the frustration of Brain Krogsgard who laments the term’s dilution into a predominately marketing term. Brian, does a great job in distinguishing and describing the 4 main types of groups that can called theme frameworks:
1. Flexible Parent Themes
These are themes like Genesis and Thesis where al the functionality of the wordpress site is held in parent theme which has a child theme taking care or the styling and layout. Normally, when a new theme is activated in wordpress the functionality of the old theme is lost which can be a real ball ache, especially when the old theme had lots of non core functionality added. This two tier parent & child system allows you to enable new child themes which include layout & style changes without effecting the functionality.
2. Visual Frameworks
These are themes like iThemes Builder, Headway, and Pagelines which have drag and drop frameworks are designed to be most suitable for non-coders. Their visual interfaces allow easy layout customization but advanced users and developers may find them a little restrictive.
3. Drop In Frameworks
Themes like Hybrid Core, Gantry and Carrington which are very powerful and useful frameworks despite being less well known that the others which is probably down to poor marketing as much as anything. A drop in framework gives a parent theme author a base set of functionality that they are free to adapt as they wish (very similar to the principles of Twitter Bootstrap and Zurb Foundation). They would easily be used in conjunction with one of the starter frameworks above to produce your own parent framework.
4. Starter / Forkable themes
A WordPress Theme Developer’s Perspective
Time Saving: Website developers are not interested writing the same code over and over again even though they may be paid by the hour. Shortcuts are sacred and they want to reuse code whenever they can. A framework allows them to reduce the time take to create each new theme as they are not restarting from scratch each time.
Better Functionality: In theory, time savings for the developer means they can spend longer on improving the underlying features and functionality.
Community: The more popular frameworks have active and helpful support communities for child theme developers. If you find an issue with the code you are likely to get support quickly if using a popular framework.
Quality Code: The growing groups of developers peer reviewing frameworks mean the code it likely to follow best practice and adhere to quality standards.
Knowledge Gap: If you are planning to develop themes for frameworks you will have to learn how the hooks and filters of the specific works. Each framework will obviously work differently and it will take you time to get up to speed.
Redundant Code: Given load times are become an ever more important factor in google rankings, having a lean and fast website is important. You may end up having a framework which includes loads of code you don’t need and a slower website than necessary.
Limitations: On the flip side of the functionality benefit noted above, you many find adding customizations are harder to achieve as you have to override core files (this limitation varies markedly across the different frameworks).
I am defining a ‘user’ as someone who is planning to buy a wordpress framework theme and and has little or no coding experience. It is likely most people reading this article fall into this category. The main advantages and disadvantages of using frameworks can be boiled down to:
Changing Front End Designs: Undoubtedly, the main advantage for beginners is that they can upgrade to a new child theme or make changes to the layout without losing any functionality.
Support: The most popular wordpress frameworks have very large communities that offer great support. Those who have unfortunately experienced the poor or non existent support offered by some independent theme developers know this factor is very important.
Speed of updates: As a general rule, frameworks are quicker at utilizing the added functionality of new wordpress updates.
Cost: As you are buying framework/parent and child this can make it a more expensive option compared to buying a stand alone theme, particularly when choose one that has annual support and update fees. However, many parent themes now come with pre-made child themes which may be sufficient for you. You could also argue you save over the long term by not having to replace lost functionality when you change themes or pay a developer to make layout changes.
Ok, so which one should you choose?
Best WordPress Frameworks For Developers
Genesis framework by Studiopress – This parent theme framework is often a favorite amongst the development community due to its lean code and multitude of options and its tendency to get on well with the majority of plugins. It is stripped back to the core essentials but with the ability to options if required. The learning curve is relatively small and once all the hooks and filters are learnt, may find the development time is significantly reduced.
Best Framework For Those With No Coding Experience
If you do not have coding experience and want to be able to customize your theme relatively easily a visual framework is likely to be best for you. The best ones of these include:
These themes have the least flexibility for developers but most flexibility for end users such as the drag & drop functionality which lets you create front end designs with an intuitive visual interface.