Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
woocommerce
/
includes
/
cli
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php if (!defined('ABSPATH')) { exit; } class WC_CLI_Update_Command { public static function register_commands() { WP_CLI::add_command('wc update', array('WC_CLI_Update_Command', 'update')); } public static function update() { global $wpdb; $wpdb->hide_errors(); include_once WC_ABSPATH . 'includes/class-wc-install.php'; include_once WC_ABSPATH . 'includes/wc-update-functions.php'; $current_db_version = get_option('woocommerce_db_version'); $update_count = 0; $callbacks = WC_Install::get_db_update_callbacks(); $callbacks_to_run = array(); foreach ($callbacks as $version => $update_callbacks) { if (version_compare($current_db_version, $version, '<')) { foreach ($update_callbacks as $update_callback) { $callbacks_to_run[] = $update_callback; } } } if (empty($callbacks_to_run)) { WC_Install::update_db_version(); WP_CLI::success(sprintf(__('No updates required. Database version is %s', 'woocommerce'), get_option('woocommerce_db_version'))); return; } WP_CLI::log(sprintf(__('Found %1$d updates (%2$s)', 'woocommerce'), count($callbacks_to_run), implode(', ', $callbacks_to_run))); $progress = \WP_CLI\Utils\make_progress_bar(__('Updating database', 'woocommerce'), count($callbacks_to_run)); foreach ($callbacks_to_run as $update_callback) { call_user_func($update_callback); $result = false; while ($result) { $result = (bool) call_user_func($update_callback); } $update_count++; $progress->tick(); } $progress->finish(); WC_Admin_Notices::remove_notice('update', true); WP_CLI::success(sprintf(__('%1$d update functions completed. Database version is %2$s', 'woocommerce'), absint($update_count), get_option('woocommerce_db_version'))); } }