Published
•
Updated
Just released the next beta of GravityView 2.0
The next major release of GravityView has made great progress! If you are part of the beta program, you will see Beta 2 in your available plugin updates. Gennady has been working away at rewriting major parts of GravityView, while also writing tests to make sure we have full backward compatibility. He recently wrote in…

The next major release of GravityView has made great progress! If you are part of the beta program, you will see Beta 2 in your available plugin updates.
Gennady has been working away at rewriting major parts of GravityView, while also writing tests to make sure we have full backward compatibility. He recently wrote in our company Slack:
Gennady: Overall stuff is really falling into place: the last couple of days were pretty exciting…today things just fell into place and our tests have all green lights.
It’s been over a year since Gennady started working on Version 2, and we’re getting close.
Interested in becoming an early adopter? Opt-in to beta releases by installing GravityView, then turn on “Become a Beta Tester” in your GravityView Settings (navigate to Views > Settings).
Personally, one of the things I’m excited about is how we’re passing data to the template files. The way the information is passed is now much more standardized (and pretty!), making it much easier for developers to use. You can check out the new Template_Context class here.
Version 2.0 – Beta 2 Release Notes
- Add support for Gravity Forms 2.3
- Don’t be as aggressive with the template deprecated notices, since mostly it affected DataTables v1
- Add support for entries that contain sub-entries (getting ready for Joins)
- Refactor logging: instead of using
do_action( 'gravityview_log_notice', … );, usegravityview()->log->notice( 'instead' );! - Add our own utility class, to remove dependency on
rgar(),rgget(),rgpost(). Instead, use\GV\Utils::_GET()for a GET request,\GV\Utils::_POST()for POST, or\GV\Utils::get()to access an item in an array or object - Clean out a ton of deprecated code
- Refactor the License, Extension, and Addon classes
- Add
Widgets_Collectionclass - Rewrite Widgets to use new
Widget_Collectionclass - Context is now passed to templates as a
\GV\Template_Contextclass rather thanstdClassCheck out the code - BREAKING CHANGE: The actions called inside template files are no longer passed
GravityView_Viewinstances. They are now passed\GV\Template_Contextobjects. Affects the following actions:gravityview_list_body_before,gravityview_list_body_after,gravityview_entry_footer_before,gravityview_entry_footer_after,gravityview_entry_class,gravityview_entry_title_before,gravityview_entry_content_before,gravityview_entry_content_after,gravityview_table_body_before,gravityview_table_cells_before,gravityview_table_cells_after,gravityview_table_body_after. If you use the actions listed, please update your code! - Version 2 also includes all the updates/improvements made to version 1.x
More articles
Launch Log: theme template editing in Block MCP, Shield silentCAPTCHA for Zero Spam, and GravityView fixes
Block MCP adds safe theme template editing, Gravity Forms Zero Spam gains Shield silentCAPTCHA support, and GravityView fixes lightbox and notice bugs.
GravityKit turns 12: a year in review, and 30% off Lifetime All Access
GravityKit turns 12. A look back at a year of GravityView 3.0, GravitySearch, and AI-assisted building, plus a birthday sale on the Lifetime All Access Pass.
Launch Log: Row headers for screen readers, smarter conditional logic, and multi-View fixes
GravityView 3.1 adds row headers for screen readers, plus smarter conditional logic in GravityCalendar and fixes for DataTables, Maps, and Dynamic Lookup.

