*/ class Advanced_Related_Posts_Activator { /** * Short Description. (use period) * * Long Description. * * @since 1.0.0 */ public static function activate() { global $wpdb; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); $installed_ver = get_option( "ays_advanced_related_posts_db_version" ); $settings_table = $wpdb->prefix . ADVANCED_RELATED_POSTS_DB_PREFIX . 'settings'; $charset_collate = $wpdb->get_charset_collate(); if($installed_ver != ARP_DB_VERSION) { $sql = "CREATE TABLE `".$settings_table."` ( `id` INT(16) UNSIGNED NOT NULL AUTO_INCREMENT, `meta_key` TEXT NOT NULL DEFAULT '', `meta_value` TEXT NOT NULL DEFAULT '', `type` TEXT NOT NULL DEFAULT '', `note` TEXT NOT NULL DEFAULT '', `options` TEXT NOT NULL DEFAULT '', PRIMARY KEY (`id`) )$charset_collate;"; $sql_schema = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = '".DB_NAME."' AND table_name = '".$settings_table."' "; $results = $wpdb->get_results($sql_schema); if(empty($results)){ $wpdb->query( $sql ); }else{ dbDelta( $sql ); } $sql = "CREATE TABLE `" . ARP_GLOBAL_SETTINGS . "` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `meta_key` TEXT NULL DEFAULT NULL, `meta_value` TEXT NULL DEFAULT NULL, `note` TEXT NULL DEFAULT NULL, `options` TEXT NULL DEFAULT NULL, PRIMARY KEY (`id`) )".$charset_collate.";"; $sql_schema = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = '".DB_NAME."' AND table_name = '".ARP_GLOBAL_SETTINGS."' "; $results = $wpdb->get_results($sql_schema); if(empty($results)){ $wpdb->query( $sql ); }else{ dbDelta( $sql ); } update_option( 'ays_advanced_related_posts_db_version', ARP_DB_VERSION ); } $metas = array( "options", ); foreach($metas as $meta_key){ $meta_val = ""; $sql = "SELECT COUNT(*) FROM `".ARP_GLOBAL_SETTINGS."` WHERE `meta_key` = '".$meta_key."'"; $result = $wpdb->get_var($sql); if(intval($result) == 0){ $result = $wpdb->insert( ARP_GLOBAL_SETTINGS, array( 'meta_key' => $meta_key, 'meta_value' => $meta_val, 'note' => "", 'options' => "" ), array( '%s', '%s', '%s', '%s' ) ); } } } public static function ays_advanced_related_posts_update_db_check() { if ( get_site_option( 'ays_advanced_related_posts_db_version' ) != ARP_DB_VERSION ) { self::activate(); } } }