2015-05-27, 09:56 AM
I am currently in the progress of writing my first plugin, and I can't find any documentation about how I should design the 'update' process without data loss.
For example: I currently add my plugin setting group and my settings rows in the _install() function. If I add a new settings row and update the plugin version, how can I design the update process? As I understand it, the admin needs to uninstall and install the plugin to create the new settings. But this will trigger my _uninstall() function, resulting in the deletion of all user data.
How are the other devs handling this? Do I need to design a special function which is called every time, just to check if my settings rows needs updating (by checking if they exists and create the missing ones)?
For example: I currently add my plugin setting group and my settings rows in the _install() function. If I add a new settings row and update the plugin version, how can I design the update process? As I understand it, the admin needs to uninstall and install the plugin to create the new settings. But this will trigger my _uninstall() function, resulting in the deletion of all user data.
How are the other devs handling this? Do I need to design a special function which is called every time, just to check if my settings rows needs updating (by checking if they exists and create the missing ones)?