The new version of the WP-Members Invitation Codes extension has been released. This is a significant update from the previous (1.x) versions.
Upgraded Database Structure
The primary change is an upgrade to the database structure. In 1.x, all invitation codes were stored in the wp_options table in the option that held the extension’s settings. While this was compact and useful for a handful of invitation codes, it did severely limit the scalability of the plugin.
By adding new database tables specifically for the use of the plugin to store invitation codes and their use, that allows for more flexibility. It allows for you to import invitation codes in bulk (currently directly into the database, but in the future, hopefully via an import process). It allows for exporting the codes (again, directly via MySQL now, but via an export process in a future release). Additionally, a table recording invite code use will lead to reporting screens to view usage of the codes.
This also compacts the settings to be limited to just that – settings, without also storing the codes themselves.
Security Audit and Code Improvement
This update includes a security audit of the entire codebase. I have gone through and rewritten code where necessary and hardened it to prevent any exploit vulnerabilities via the code or database.
I’ve improved the codebase to better handle data, removing the use of globals and instead relying on containers in the object class, making it more object oriented. Additionally, the extension is now translation ready with a pot file in the /languages/ folder.
Lastly, the update process makes a backup of the previous versions settings just in case anything goes wrong during the upgrade. As long as nothing goes wrong with the backup process, rollback is possible if necessary.