• It’s been two years and you have not sorted out your database versioning issues…

    Change this code:

    function gravitecnet_abandoned_cart_table(){
    if( class_exists( 'woocommerce' ) ){
    global $wpdb;
    $charset_collate = $wpdb->get_charset_collate();
    $query = "CREATE TABLE IF NOT EXISTS " . $wpdb->prefix . "gravitecnet_abandoned_cart (
    id int(10) unsigned NOT NULL AUTO_INCREMENT,
    date_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
    regID varchar(500) CHARACTER SET latin1 DEFAULT NULL,
    prod_count TINYINT(4) DEFAULT NULL,
    prod_id BIGINT(20) DEFAULT NULL,
    cart_total varchar(20) CHARACTER SET latin1 DEFAULT NULL,
    PRIMARY KEY (id),
    UNIQUE(regID)
    ) $charset_collate; ";

    require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
    dbDelta( $query );
    }
    }

    to

    global $gravitecnet_db_version;
    $gravitecnet_db_version = 1;

    function gravitecnet_abandoned_cart_table(){
    global $gravitecnet_db_version;

    if( class_exists( 'woocommerce' ) ){
    $installed_ver = get_option( 'gravitecnet_db_version' );
    if ( $installed_ver != $gravitecnet_db_version ) {
    global $wpdb;
    $charset_collate = $wpdb->get_charset_collate();
    $query = "CREATE TABLE IF NOT EXISTS " . $wpdb->prefix . "gravitecnet_abandoned_cart (
    id int(10) unsigned NOT NULL AUTO_INCREMENT,
    date_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
    regID varchar(500) CHARACTER SET latin1 DEFAULT NULL,
    prod_count TINYINT(4) DEFAULT NULL,
    prod_id BIGINT(20) DEFAULT NULL,
    cart_total varchar(20) CHARACTER SET latin1 DEFAULT NULL,
    PRIMARY KEY (id),
    UNIQUE(regID)
    ) $charset_collate; ";

    require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
    dbDelta( $query );

    update_option( 'gravitecnet_db_version', $gravitecnet_db_version );
    }
    }
    }

The topic ‘Database Versioning’ is closed to new replies.