GeneratePress 2.0

GeneratePress 2.0 is our first major release since we launched GeneratePress almost 4 years ago. This update is all about performance and usability.

Our goal was to give you the lightest foundation to start your websites, and we think 2.0 is exactly that. When you first install GeneratePress now, it only weighs about 30kb on the frontend!


Who doesn’t love stats? Take a look at what changed since 1.4:

  • 195 commits
  • 12,459 line additions
  • 11,673 line deletions

No more jQuery

All of the theme javascript has been re-written from scratch. When you install the free theme now, jQuery is no longer loaded! This reduces your page size quite considerably.

Full accessibility

GeneratePress has been reviewed for accessibility, and passed all of their tests. We can now say the theme is 100% accessible!

New default font

Open Sans has been removed as the default font. We’ve switched to a simple system stack, which again reduces your page size considerably.

Font Awesome essentials

Only essential Font Awesome icons are loaded when you freshly install GeneratePress. If you need to use the entire library, you can easily turn it on in Customize > General.

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.

PHP performance

We’ve profiled our PHP and removed small performance bottlenecks. These are micro-optimizations, but will increase the speed of your website.

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.

Retina logos

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 and PHP coding standards wherever possible.

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.

Deprecated functions

We’ve deprecated some functions we no longer need.

  • generate_get_min_suffix()
  • generate_add_layout_meta_box()
  • generate_show_layout_meta_box()
  • generate_save_layout_meta()
  • generate_add_footer_widget_meta_box()
  • generate_show_footer_widget_meta_box()
  • generate_save_footer_widget_meta()
  • generate_add_page_builder_meta_box()
  • generate_show_page_builder_meta_box()
  • generate_save_page_builder_meta()
  • generate_add_de_meta_box()
  • generate_show_de_meta_box()
  • generate_save_de_meta()
  • generate_add_base_inline_css()
  • generate_color_scripts()
  • generate_typography_scripts()
  • generate_spacing_scripts()

Removed filters

Some filters have been removed, as they have core filters you can use instead.

  • generate_leave_reply
  • generate_cancel_reply

Full changelog

2.0.2 – January 17, 2018

  • Fix: Double tap issue in sub-menus on iOS devices
  • Fix: Secondary nav sub-menu positioning in sidebars

2.0.1 – December 14, 2017

  • Fix: PHP notice in Customizer using multisite
  • Fix: Retina logo container width in Firefox
  • Fix: RTL dropdown menu issue
  • Fix: undefined .closest() error
  • Fix: Mobile sub-menu issue when no theme location is set
  • Fix: Various small dropdown menu issues

2.0 – December 6, 2017

  • New: Full web accessibility
  • New: All jQuery replaced with vanilla javascript
  • 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
  • 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: DRY footer widget code
  • 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
  • Remove generate_leave_reply filter
  • Remove generate_cancel_reply filter
  • 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()

21 thoughts on “GeneratePress 2.0”

  1. ¡Great! ¿Are you guys planning to incorporate flexbox for the grid system? That’ll be even more awesome.

    Thanks for the hard work you put into the Generatepress theme.

  2. I must be weird, but i like no jQuery solutions, anybody knows and can share more vanilla js solutions for WP backdnd and frontend? Anything in codex most often requires jQuery, like ajax calls. I’m starving for any examples ho-to do this and than in valnilla js.Sorry for poor English, kind regards 🙂

  3. Just WOW. We already thought GeneratePress was The theme in WordPress, now it’s even better with this clever move towards nowadays needs of better web performance and loading time.


  4. Impressive, congratulations on a job very well done! Besides the noticeable speed increase and room for retina logo’s, I really like the new clean meta box. Cheers Tom!

    • The WooCommerce module is in GP Premium. It has had some enhancements and bug fixes since release, but nothing major as of right now.


Leave a Comment