parent
572712cb52
commit
0ecfc26a84
|
@ -325,6 +325,17 @@ class WC_Install {
|
|||
}
|
||||
|
||||
return "
|
||||
CREATE TABLE {$wpdb->prefix}woocommerce_api_apps (
|
||||
app_id bigint(20) NOT NULL auto_increment,
|
||||
user_id bigint(20) NOT NULL,
|
||||
description longtext NULL,
|
||||
permission varchar(10) NOT NULL,
|
||||
consumer_key varchar(200) NOT NULL,
|
||||
consumer_secret varchar(200) NOT NULL,
|
||||
PRIMARY KEY (app_id),
|
||||
KEY consumer_key (consumer_key),
|
||||
KEY consumer_secret (consumer_secret)
|
||||
) $collate;
|
||||
CREATE TABLE {$wpdb->prefix}woocommerce_attribute_taxonomies (
|
||||
attribute_id bigint(20) NOT NULL auto_increment,
|
||||
attribute_name varchar(200) NOT NULL,
|
||||
|
|
|
@ -12,5 +12,48 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|||
exit;
|
||||
}
|
||||
|
||||
global $wpdb;
|
||||
|
||||
// Maintain the old coupon logic for upgrades
|
||||
update_option( 'woocommerce_calc_discounts_sequentially', 'yes' );
|
||||
update_option( 'woocommerce_calc_discounts_sequentially', 'yes' );
|
||||
|
||||
/**
|
||||
* Update the old user API keys to the new Apps keys
|
||||
*/
|
||||
$api_users = $wpdb->get_results( "SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'woocommerce_api_consumer_key'" );
|
||||
$apps_keys = array();
|
||||
|
||||
// Get user data
|
||||
foreach ( $api_users as $_user ) {
|
||||
$user = get_userdata( $_user->user_id );
|
||||
$apps_keys[] = array(
|
||||
'user_id' => $user->ID,
|
||||
'permission' => $user->woocommerce_api_key_permissions,
|
||||
'consumer_key' => $user->woocommerce_api_consumer_key,
|
||||
'consumer_secret' => $user->woocommerce_api_consumer_secret
|
||||
);
|
||||
}
|
||||
|
||||
if ( ! empty( $apps_keys ) ) {
|
||||
// Create new apps
|
||||
foreach ( $apps_keys as $app ) {
|
||||
$wpdb->insert(
|
||||
$wpdb->prefix . 'woocommerce_api_apps',
|
||||
$app,
|
||||
array(
|
||||
'%d',
|
||||
'%s',
|
||||
'%s',
|
||||
'%s'
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
// Delete old user keys from usermeta
|
||||
foreach ( $api_users as $_user ) {
|
||||
$user_id = intval( $_user->user_id );
|
||||
delete_user_meta( $user_id, 'woocommerce_api_consumer_key' );
|
||||
delete_user_meta( $user_id, 'woocommerce_api_consumer_secret' );
|
||||
delete_user_meta( $user_id, 'woocommerce_api_key_permissions' );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,11 +35,12 @@ if ( ! empty( $status_options['uninstall_data'] ) ) {
|
|||
wp_trash_post( get_option( 'woocommerce_logout_page_id' ) );
|
||||
|
||||
// Tables
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_attribute_taxonomies" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_downloadable_product_permissions" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_termmeta" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_tax_rates" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_tax_rate_locations" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_api_apps" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_attribute_taxonomies" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_downloadable_product_permissions" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_termmeta" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_tax_rates" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_tax_rate_locations" );
|
||||
|
||||
// Delete options
|
||||
$wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE 'woocommerce_%';");
|
||||
|
@ -47,6 +48,6 @@ if ( ! empty( $status_options['uninstall_data'] ) ) {
|
|||
// Delete posts + data
|
||||
$wpdb->query( "DELETE FROM {$wpdb->posts} WHERE post_type IN ( 'product', 'product_variation', 'shop_coupon', 'shop_order', 'shop_order_refund' );" );
|
||||
$wpdb->query( "DELETE meta FROM {$wpdb->postmeta} meta LEFT JOIN {$wpdb->posts} posts ON posts.ID = meta.post_id WHERE posts.ID IS NULL;" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_order_items" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS " . $wpdb->prefix . "woocommerce_order_itemmeta" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_order_items" );
|
||||
$wpdb->query( "DROP TABLE IF EXISTS {$wpdb->prefix}woocommerce_order_itemmeta" );
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue