A couple weeks back I came across a comment on Sitepoint review of Beans, by local WordPress dev (and fellow convert from Joomla), Simon Dowles. I enjoyed reading about his first impressions of Beans, so I reached out and asked if he'd mind me publishing it on the ThemeButler blog. He was kind enough to agree, so without further adieux, here it is.
I stumbled across Beans about 2 months ago when I saw the author of Beans at a local WordCamp Conference. I decided to poke around the docs a bit to get an idea of what the framework was capable of. While it was a lot of information to digest - not difficult, just a lot - it was clear from page 1 that Beans was something of a godsend to the WordPress frameworks sphere.
The level of customization that Beans offers is truly something you ca only comprehend by DOING it. I decided to run with Beans while knowing nothing about it, not the slightest bit. There was not a single bit of customization, or trimming down / beefing up of features that I could not accomplish.
The UIkit integration is flawless, I was able to selectively load core and add on components on a per page / template basis, which made the site fly. Particularly useful is the script and stylesheet compiler, which combines all of your JS and CSS files (including anything added inline using the 'wp_footer' action hook) and generates a single concatenated file for each, CSS and JS. Couple this with a caching plugin such as WP Rocket and a CDN like CloudFlare and you may just find that the load time of your site is around 95% faster than all sites tested on Pingdom. No kidding!
What I love most in terms of markup control is that fact ALL markup is handled using beans actions. Markup can be added, classes can be added, changed, deleted, attributes can be added to existing markup elements, the list goes on. All of this is achieved using an intuitive and dead easy API.
Want a particular content element removed on a certain page(s)? No problem, beans exposes almost all of it's default content elements to a filter API. Simply tap into the filter, alter the content returned, or simply return false to remove it.
Understanding where filters can be applied and so on is usually a daunting task for a newcomer, and even seasoned developers alike. With Beans it's a simple as heading over to 'Appearance -> Settings' and checking the 'Development Mode' checkbox. When in development mode, beans exposes every type of markup action name and content filter by means of HTML comments and inline attributes, on every single element. It's no denying that the beans developer has considered the workflow of developers very carefully, and he really had made your life so easy.
I have not touched on the images API, nor the custom fields API yet, and yet I have had all the power I have needed.
If there is one goal you have for 2016 it's this: Learn and embrace Beans. I promise you, wholeheartedly, it will change the face of your WordPress development forever.
If you wish to see an example of a site developed using beans, check out the following two sites, who went from concept to creation in little over a month, thanks to Beans:
Personally, I am looking forward to seeing what else Simon will create with Beans 🙂
Got your own Beans story to share? Send it over to [email protected]