Version 4.0 is the biggest update the plugin has received since the first version is released in 2015, improving plugin performance, database schema, loading of files, adding many new features, fixing almost 20 bugs and much more.
When the plugin was first made, the goal of the original database schema was to make it easy to store all kinds of information regardless of the rating method used. And, the chosen approach was good, and there were no major issues with the queries. But, over time, things were changing, and more complex things were required that can’t be solved by using the cache, and the meta based nature of database tables has proven a limiting factor for some things.
It is hard to list everything that is changed in this release. Most of the plugin has been touched in some way to make it better. One area that has seen the least amount of changes, is the frontend, and this time there are no new templates, changes in the way rendering works or anything like that. This is core and features under the hood type of release.
Version 4.0 brings an updated database schema that includes 3 extra database tables that aim to store rating data that was previously stored in two plugin’s metatables. The new structure allows for much simpler SQL queries, that will run faster because all the data is now indexed and will take less space in the long run because data is stored in a proper format. And, it also opens the door to having some really cool things done, with the new Analytics plugin being able to quickly get ratings and votes data and general statistics for any rating method and rating type combination. And, with the database changes and more different core changes, plugin performance has gotten a significant boost and all the queries are faster with the caching improved where needed.
One of the features that were requested a lot is the ability to limit the users voting each day or week. And, the new version now has updated Vote limit controls where you can still use basic rule: one vote, multiple votes and one vote with revoting ability. But, these basic rules now can be set so that users can vote once every day, or once every week, month or year. This is all disabled by default, but you can enable it through plugin Global settings.
Without making this post too long, and considering how many new things and updates are added, it is best to check out the changelog for the plugin. Some of the highlights include: fully reworked JS and CSS loading now using scripts registration and better dependencies control, posts addon can auto-embed reviews and rating methods, WP REST API uses the better structure for the data, posts and terms endpoints in WordPress now can show ratings too, maintenance procedures are improved…
And, there are about 20 bugs fixed in this release, including various issues with the main query, cache problems, issues with various addons and much more.
Proper upgrade to 4.0 is extremely important, and the plugin will not work if that is not done! As soon as you install the new plugin version, make sure you go through the upgrade process. Here is the knowledge base article you should also check out: Upgrade plugin to version 4.0. And, make sure you have a backup ready in case something goes wrong.
Stay tuned for the additional blog posts soon to follow with the information about the new addons and addons updates.