HEX
Server: Apache/2.4.65 (Ubuntu)
System: Linux ielts-store-v2 6.8.0-1036-gcp #38~22.04.1-Ubuntu SMP Thu Aug 14 01:19:18 UTC 2025 x86_64
User: root (0)
PHP: 7.2.34-54+ubuntu20.04.1+deb.sury.org+1
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
Upload Files
File: /var/www/html/ielts-store/wp-content/plugins/automatewoo/includes/DatabaseUpdates/README.md
# Database Updates

AutomateWoo uses database updates (migrations) to preform any required changes to the WordPress database.
This can happen after AutomateWoo is updated and a user with `manage_woocommerce` privileges chooses to initiate 
database update.

## Key points 
- Each database update corresponds to a specific plugin version.
- Database updates must be able to safely run multiple times without breaking anything. 
This is because sites can downgrade plugin versions.
- The database updates unfortunately still use "include based" loading rather than "class based" auto loading 

## How to add a new database update

1. Register the database update by adding the targeted version number to `\AutomateWoo\Installer::$db_updates`
1. Create the file: `includes\DatabaseUpdates\{$version}.php` where `$version` corresponds to the previous step
1. In the file add class that extends `\AutomateWoo\DatabaseUpdates\AbstractDatabaseUpdate`
1. Return a new instance of the class at the end of the file
1. In the new database update class
 - Set the `$version` property
 - Implement the `process()` method (see `\AutomateWoo\DatabaseUpdates\AbstractDatabaseUpdate::process`)
 - If you need to preform actions before or after the database process use the `start()` and `finish()` methods