Automattic\WooCommerce\Admin
Install::update() private WC 1.0
Push all needed DB updates to the queue for processing.
{} Это метод класса: Install{}
Хуков нет.
Возвращает
null
. Null. Ничего.
Использование
$result = Install::update();
Код Install::update() Install::update WC 5.1.0
private static function update() {
$current_db_version = get_option( self::VERSION_OPTION );
$loop = 0;
foreach ( self::get_db_update_callbacks() as $version => $update_callbacks ) {
if ( version_compare( $current_db_version, $version, '<' ) ) {
foreach ( $update_callbacks as $update_callback ) {
$pending_jobs = WC()->queue()->search(
array(
'per_page' => 1,
'hook' => 'woocommerce_run_update_callback',
'search' => wp_json_encode( array( $update_callback ) ),
'group' => 'woocommerce-db-updates',
'status' => 'pending',
)
);
$complete_jobs = WC()->queue()->search(
array(
'per_page' => 1,
'hook' => 'woocommerce_run_update_callback',
'search' => wp_json_encode( array( $update_callback ) ),
'group' => 'woocommerce-db-updates',
'status' => 'complete',
)
);
if ( empty( $pending_jobs ) && empty( $complete_jobs ) ) {
WC()->queue()->schedule_single(
time() + $loop,
'woocommerce_run_update_callback',
array( $update_callback ),
'woocommerce-db-updates'
);
Cache::invalidate();
}
$loop++;
}
}
}
}