The WP-Members User Tracking 1.4.0 is the most significant update of this plugin extension for WP-Members in quite some time. There are some key changes, including a database change (although I have kept certain elements in place for backward compatibility).
Logging log-ins.
The first major change is that what was previously tracking of the user’s last login is now a log of all logins. This includes a new database table that will contain a timestamp of all logins along with the user’s IP, the page the user logged in on, and some additional data points. When you upgrade, this table will be seeded with existing logins of users, which are stored as user meta and only contain the last login time. The user meta will continue to be used for backward compatibility for the time being. Also keep in mind that when you view the logins table, there will be empty data points for all of the old logins, since the only data for those is the date/time and the user.
Bug fixes
There were a couple of key bug fixes in this release:
- Data export if the user has been deleted: Previously, if a user was deleted and the plugin was not set to delete data from a user when they are deleted, then that data would not match up with a user ID. This would result in a PHP error being included in the export CSV. Note that this only affects users of the plugin who (1) delete users, and (2) had not set up the plugin to delete user tracking data when a user is deleted.
- Uninstall routine fix: Previously, if you ran the delete option for the plugin, it would hang up in certain configurations. This has been reviewed and fixed so that the plugin will self delete (including if you have selected to remove data tables upon delete).
Background improvements
The plugin received a rewrite of all of the installation routines, primarily due to the new login table and migrating data into it.
The plugin updates API was updated to the most recent version to allow the plugin to be run (and updated) in PHP 8+ environments.
CSS and JS was reviewed to make sure that minified versions are loaded unless debug is enabled.