Last month we kicked off the new year with our first Genesis Shapers Slack meeting (the first ever meeting was at WCUS in Nashville). These meetings are fantastic opportunity for folks to share their thoughts and ideas as it pertains to Genesis. On February 9th, we held our 2nd Shapers Slack meeting, so I wanted to share with you what we discussed about the future of Genesis.
As a reminder, the Genesis Shapers are a hand-selected and diverse group of people representing companies from across the community who have come together to be a representative voice in the strategic direction of Genesis in addition to the feedback we receive directly from customers, across social channels, and through Genesis WP on Slack.
Included in this group are:
Bill Erickson, Carrie Dils, Gary Jones, Greg Boser, Jennifer Bourn, Jon Brown, Jonathan Jeter, Lauren Gaige, Lee Anthony, Mike Hemberger, Robin Cornett, Sara Dunn, Sridhar Katakam, and Tonya Mork.
In February Shapers meeting, we worked our way through some important things—especially with the recent release of WordPress 5.0 and how that affected the Genesis roadmap.
David Vogelpohl, the Vice President of Web Strategy at WP Engine and StudioPress brand lead, facilitated the conversation, and here’s what we covered:
- Genesis 2.9, 2.10, and New Features
- What opportunities we see for Genesis to make working with the block builder easier.
- What features should be added to Genesis (and Why?)
- What current features in Genesis need to be improved or deprecated in Genesis (and Why?)
Genesis 2.9, 2.10, and New Features
With the release of Genesis 2.8, we introduced a new one-click demo install feature that could be taken advantage of by themes. This feature can be used to import sample homepage content to replicate the theme demo site.
In Genesis 2.9, we are taking that one step further by allowing more content—sample menus, sample blog posts, featured images, and user options—to be added upon activation of the theme.
We asked the Shapers two questions: What else should we add? and What problems do site owners have with site building that could be solved with the content autoloader?
Robin Cornett suggested:
“You mentioned more content types, but I think it would be helpful to include more pages—have seen multiple mentions of ‘why didn’t the contact/columns/etc page import?’”
Thankfully Genesis 2.9 will include this option, and we’ll be updating our messaging to indicate that the one-click demo install feature will cover more than just the homepage.
Bill Erickson followed that up with this question:
“Could you build an onboarding form that asks questions and uses that data in different ways? Ex: ‘Tell us about your business: Address [site option], Social Links [Yoast SEO option, auto-add to nav], About Page Content [post content]’”
That sparked a pretty length back-and-forth dialogue, with affirmation from other Shapers as well as agreement from our team that a more profound onboarding experience would be quite welcome. Nathan Rice pointed out that there was nothing preventing agencies and theme providers from creating systems which dynamically create the onboarding config file to accomplish this very thing!
Mike Hemberger pointed out a considerable distinction:
“Very important to distinguish the different users/sites: Brand new fresh install vs Existing site that needs some new content (maybe homepage, other pages, widgets, menus) but not all.”
There was a bit more discussion around that as well as the option/functionality to auto-load 3rd party plugins. In the spirit of honoring the schedule, we moved on.
How Genesis Can Make Block Building Easier
Bill Erickson quickly pointed out Nathan’s recent post, with some actionable ideas as well:
“Nathan wrote a post recently on enqueuing scripts/styles on a per-block basis right when they’re needed. Genesis could help automate this. When a block displays on the page, Genesis checks `/assets/css/blocks/{block name}.css` to see if theme-specific styles exist and if so, load them inline. Theme developers could style many block types without bloating the stylesheet. For example, styles for Gravity Forms, WPForms, Ninja Forms, and multiple block library plugins.”
Bill’s suggestion instigated a lot of conversation around blocks, plugins, and resources that are needed in each case to accommodate them.
John Parris, Senior Software Engineer on the Genesis team, pointed out:
“CSS and JS in blocks is going to be a tough nut to crack. Many block plugins are already loading tons of code on every page, whether it’s needed or not. Adding custom Genesis styles on top of that makes it worse unless we can disable the block plugin styles—which feels like a problem waiting to happen.”
Tonya Mork, who has recently done some great work with AMP and Genesis explained:
“We can mitigate that using a CSS tree shaker for non-AMP versions (it’s built into the AMP plugin). CSS tree shaking means the endpoint only has the needed styles sent out to the browser.”
Quite honestly, some of this is above my head, but I love the expertise and approach from the Shapers no doubt. It seems like the ongoing dialogue about making Genesis better, all while enabling a better user experience has progressed rapidly since the WPE acquisition.
What Features Should Be Added to Genesis
Carrie Dils didn’t waste any time. #grins. Here’s what she asked:
“Is there a way to move the site credits into a Customizer field instead of only being editable via functions.php?”
As a fan of less, this is a great idea. While we currently offer the ability to customize the site credits with the Genesis Simple Edits plugin, I do like the idea of enabling users to do something that doesn’t require the use of a custom function or installing other plugins.
Sara Dunn also suggested something that I support. As a theme designer, this would be a fantastic addition to Genesis and the development process:
“I’d love to see a page layout that is full width without a set content width, so that it can be used with a page builder.”
There are probably some caveats by enabling this, but I think it’s much easier to accommodate those than to ask users/developers to undo something. After all, the number of folks using other site building tools is significant. In this case, I think a supportive approach would be well worth our consideration.
While adding/removing functionality is indeed a priority for our team, Gary Jones (no surprise here!) brought up an equally important point:
“I’d like to see the remaining code standards addressed, including doing the non-impactful bits that will make it compatible with WordPress.com VIP as well, and some CI finally put in place. It’s not a customer facing feature, but, still a feature of the project.”
It’s easy for us to get caught up in new features and things that our marketing team can talk about. Even though standards are not customer facing, Gary is not wrong when he suggests that addressing code standards is important, and in my opinion, it’s something we should take the time to do.
Before we turned the corner on the last discussion item, Robin asked something that many folks have also been wondering:
“Will existing Genesis widgets be converted to blocks? We’ve asked in GitHub but no answer yet?”
Yes, and this is something that excites me. Following the example set by WordPress itself, our team is actively working on the development of blocks that will replace the current iteration of widgets.
Included in this list are the Featured Post/Page widgets as well as the Genesis eNews and Update widget—and we will deliver these through our Atomic Blocks plugin.
What Features Should Be Improved or Deprecated in Genesis
Quick to speak, Jennifer Bourn put in her two cents about the addition of Google AdSense:
“Widgets have to go, but I think you’re already on that right? And if it were my call, that ad stuff would move to a plugin.”
She won’t get any argument from me, and Nathan addressed this head-on:
“The ad stuff goes away in 3.0.”
Let’s say that once in a while it’s ok to say “no” when it comes to adding things into the framework. I’ll also mention that we have made a few bad decisions over the years with Genesis, but the great thing (yay automatic updates!) is that we have the chance to remove things that ultimately should never have been there in the first place.
Mike Hemberger volleyed for the addition of Layouts:
“I think Jon (Broan) and Robin (Cornett) and I would like to beat the drum of Layout vs. Content blocks… where shall we focus that discussion?”
Mike is the co-creator of Mai Lifestyle Pro and Mai Law Pro. He and his partner Dave have developed an “engine” for the core codebase of their themes, which—like a plugin—can be auto-updated at any point without site disruption.
Similar to other site building tools, their Layout Engine allows users to create a number of layout combinations in the content area, which can expedite the development process.
We could have (and probably still will) have a lengthy conversation around Layouts and Containers within blocks. There is a lot to digest here, and of course, there’s equally a lot to consider.
The amount of activity and discussion right now around Genesis is high, and I love that the community has been so open to provide feedback and suggestions. I can’t think of a time where our bandwidth was as available as it is right now, and that can only mean great things for the Framework.
WP Engine has fulfilled its promise to provide resources to push the Framework forward, and the combination of the Genesis Shapers group with more man-hours has undoubtedly proved to be productive.
Genesis 2.9 is right around the corner, and the roadmap for Genesis 2.10 has already been set. I think you’ll be excited to see what we have in store, and look forward to start working on the next theme for you.
It’s a fun time to be in the WordPress space, and while the Gutenberg editor has presented its challenges, I feel confident that our team will be able to keep pace and continue to provide the best digital experience possible for our customers.