GeneratePress 2.0 has been released! You can grab the update in your Dashboard.
GeneratePress 2.0 is near! We’re ready for testers to put it through the wringer and find any issues we might have missed.
We know you’re busy, so we have a deal for you. If you find a 2.0 related bug before anyone else, we’ll extend your GP Premium license by 1 year.
How to test
Since GeneratePress is hosted on WordPress.org, we don’t have a cool way to serve beta versions like our premium plugin. That being said, the process is very simple!
Install Easy Theme and Plugin Upgrades
This plugin will prevent you from getting a “folder already exists” error when trying to upload the theme to a site which has it already. This is only if you’ll be trying out the beta version on a site where GeneratePress is already installed.
- Go to Plugins > Add New
- Search for Easy Theme and Plugin Upgrades
- Install, activate and forget
Download the latest generatepress.zip file
- Download the latest beta version here
- Go to Themes > Add New > Upload
- Install, activate and test
GeneratePress 2.0 focuses largely on performance and usability. Here’s some of the major changes.
No more jQuery
This is the main testing point – things like your dropdown menu, click dropdown menu, navigation search etc.. They should all work the same as before, just with no big jQuery library.
2.0 has been reviewed by the WordPress.org accessibility team, and passed all of their tests. We can now say the theme is 100% accessible!
New default font
Starting in 2.0, Open Sans has been removed as the default font. We’ve switched to a simple System Stack, which again reduces your page size considerably. Of course, this won’t overwrite the font you’ve chosen, this will only apply to fresh sites with no saved options.
Font Awesome essentials
Instead of loading the entire Font Awesome library, only the essentials will load by default. If you’re updating GP on an existing site, we’ll set it to the full library automatically for you, as we don’t want to break any icons you have in your content.
Dynamic CSS caching
Many of your Customizer options write CSS for you, and output it to your pages. Instead of generating this dynamic CSS on every page load, we cache it in the database and serve the cached CSS instead. As you can imagine, this is a big performance boost.
On first load, the CSS will be cached and added to the database. Any time you save the Customizer options, the cache will bust and get updated with your new CSS.
We’ve profiled our PHP and removed small performance bottlenecks. These are micro-optimizations, but will increase the speed of your website.
The Layout metabox
Instead of having a bunch of separate metaboxes polluting your screen as you add pages and posts, we’ve merged all of our metaboxes into one master Layout metabox.
We added a new option in Customize > Site Identity to upload a retina logo. This method uses srcset to show your retina logo on screens that support it.
File structure completely re-organized
We went through every single function, and re-organized how the theme code is structured. This makes the theme much easier to navigate for developers looking for specific functions etc..
WordPress coding standards
We cleaned our code up considerably, following WordPress coding standards very strictly.
Child theme changes
In 2.0, the
generate_sidebars hook has been removed. It was causing a PHP bottleneck and hurting performance.
If you’re using a child theme with custom page templates, you will need to replace this hook with the new
generate_after_primary_content_area hook, and add the sidebars function. You can see these new elements by viewing the page.php file in 2.0.
Of course, we kept backward compatibility so your sidebars won’t disappear when you update.
Things to look for
Here’s a couple things to look for when testing the beta:
- Any obvious errors or issues?
- Mobile menu still works as it did before.
- Sub-menu dropdown methods (hover, click, arrow click) all work as they did before.
- Navigation search and back to top button work as they did before.
- Font Awesome Essentials are turned off on existing websites.
- Font Awesome Essentials are set on fresh installs.
- Dynamic CSS caching is turned off on existing websites.
- Dynamic CSS caching is set on fresh installs.
- Retina logo works on retina screens – existing logos aren’t affected.
- New master Layout metabox works flawlessly.
We’ve deprecated some functions we no longer need.
Some filters have been removed, as they have core filters you can use instead.
rc.1 – 12/4/2017
- Tweak: Set comment website field as URL input type
- Tweak: Set comment email field as email input type
- Tweak: Use WP defaults for comment must_log_in and logged_in_as messages
- Tweak: Fix admin notice position in GP Dashboard
- Tweak: Let WP figure out featured image alt attribute
beta.3 – 12/2/2017
- DRY footer widget code
- Clean up WordPress Coding Standards issues
- Set comment website field as URL input type
- Set comment email field as email input type
- Tweak: Use WP defaults for comment must_log_in and logged_in_as messages
- Remove generate_leave_reply filter
- Remove generate_cancel_reply filter
beta.2 – 11/30/2017
- Tweak: Make Layout metabox sidebar compatible
- Fix: Navigation search on RTL sites
- Fix: Fix Top Bar colors and typography options not appearing
beta.1 – 11/29/2017
- Fix: Sidebar sub-menu positioning when set to hover
- Fix: Horizontal scroll caused by navigation search on RTL sites
- Fix: “0” option in Footer Widget metabox section won’t save
- Fix: Navigation search icon stays highlighted when closed in some cases
- Fix: Navigation search doesn’t come into focus sometimes
alpha.1 – 11/27/2017
- New: Full web accessibility
- New: System stack font set to default
- New: H6 typography options
- New: Option to turn on Font Awesome essentials
- New: Font Awesome set to essentials by default
- New: Retina logo option
- New: Cache dynamic CSS
- New: Option to enable/disable dynamic CSS caching
- New: Merge all separate metaboxes into one master metabox
- New: generate_dashboard_page_capability filter
- New: generate_dashboard_inside_container hook
- New: generate_dashboard_after_header hook
- New: generate_after_primary_content_area hook
- New: generate_show_post_navigation filter
- Tweak: PHP performance profiled and improved
- Tweak: generate_sidebars hook removed ** Update your child themes *
- Tweak: Style select inputs the same as other inputs
- Tweak: Archive titles same font size as other h1 elements
- Tweak: Add accessibility to read more links
- Tweak: Add alt tag to featured images
- Tweak: Remove title tag from featured images
- Tweak: Make mobile menu keyboard accessible
- Tweak: Make dropdown menu types keyboard accessible
- Tweak: Make dropdown toggle arrow larger on mobile
- Tweak: Load style.min.css instead of style.css
- Tweak: Clean up minified Font Awesome file
- Tweak: Comments title screen reader text set to h2
- Tweak: Remove margin from last author info paragraph
- Tweak: Adjust mobile menu icon position
- Tweak: Load admin-specific files in the admin only
- Tweak: Move skip to content link into hook and remove from header.php
- Tweak: Add screen reader labels to comment form fields
- Tweak: Change widget titles to h2 elements
- Tweak: Remove existing separate meta boxes
- Tweak: File structure completely re-organized
- Tweak: Code re-written to adhere to WordPress coding standards
- Fix: Button text color in content when content link is set
- Fix: Left aligned footer bar alignment
- Fix: Spacing when sticky nav is activated
- Fix: Header alignment in RTL languages
- Fix: Tablet/desktop grid bug
- Fix: Header inner width live preview bug
- Deprecated: generate_get_min_suffix()
- Deprecated: generate_add_layout_meta_box()
- Deprecated: generate_show_layout_meta_box()
- Deprecated: generate_save_layout_meta()
- Deprecated: generate_add_footer_widget_meta_box()
- Deprecated: generate_show_footer_widget_meta_box()
- Deprecated: generate_save_footer_widget_meta()
- Deprecated: generate_add_page_builder_meta_box()
- Deprecated: generate_show_page_builder_meta_box()
- Deprecated: generate_save_page_builder_meta()
- Deprecated: generate_add_de_meta_box()
- Deprecated: generate_show_de_meta_box()
- Deprecated: generate_save_de_meta()
- Deprecated: generate_add_base_inline_css()
- Deprecated: generate_color_scripts()
- Deprecated: generate_typography_scripts()
- Deprecated: generate_spacing_scripts()