get_col("SELECT blog_id FROM $wpdb->blogs"); foreach ($blogids as $blog_id) { switch_to_blog($blog_id); _alc_activate(); } restore_current_blog(); return; } _alc_activate(); } else { // not a multisite.... _alc_activate(); } } function _alc_activate() { global $wpdb; $table_name = $wpdb->prefix . 'alc_link'; create_links_table($table_name); $table_name = $wpdb->prefix . 'alc_address'; create_addresses_table($table_name); $table_name = $wpdb->prefix . 'alc_redirectlog'; create_redirects_table($table_name); // do we need to add/set the url trigger ? if (!get_option('alc_url_trigger')) { add_option('alc_url_trigger', ALC_DEFAULTURLTRIGGER); } } function create_links_table($table_name) { global $wpdb; if (!empty($wpdb->charset)) { $charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset}"; } if (!empty($wpdb->collate)) { $charset_collate .= " COLLATE {$wpdb->collate}"; } $sql = "CREATE TABLE {$table_name} ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `redirectType` enum('300','301','302','303','307') NOT NULL default '302', `maxReplacements` smallint(5) unsigned NOT NULL default '0', `flags` tinyint(4) NOT NULL, `titleText` varchar(128) NOT NULL, `searchText` varchar(128) NOT NULL, `searchTextDelimiter` char(1) NULL, `urlSuffix` varchar(128) NOT NULL, `replacementOrder` int(11) NOT NULL default '0', `cssClass` varchar(32) NOT NULL, `pageExceptions` varchar(128) NOT NULL, `postExceptions` varchar(128) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `urlSuffix` (`urlSuffix`) ) ENGINE=MyISAM {$charset_collate} {$charset_collate} ;"; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); dbDelta($sql); } function create_addresses_table($table_name) { global $wpdb; if (!empty($wpdb->charset)) { $charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset}"; } if (!empty($wpdb->collate)) { $charset_collate .= " COLLATE {$wpdb->collate}"; } $sql = "CREATE TABLE {$table_name} ( `id` int(10) unsigned NOT NULL auto_increment, `linkId` int(10) unsigned NOT NULL, `default` enum('Yes','No') NOT NULL default 'No', `country` varchar(2) NOT NULL, `address` varchar(256) NOT NULL, PRIMARY KEY (`id`), KEY `linkId` (`linkId`) ) ENGINE=MyISAM {$charset_collate} {$charset_collate} ;"; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); dbDelta($sql); } function create_redirects_table($table_name) { global $wpdb; if (!empty($wpdb->charset)) { $charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset}"; } if (!empty($wpdb->collate)) { $charset_collate .= " COLLATE {$wpdb->collate}"; } $sql = "CREATE TABLE {$table_name} ( `addressId` int(10) unsigned NOT NULL, `redirectDateTime` datetime NOT NULL, INDEX `addressId` (`addressId`) ) ENGINE=MyISAM {$charset_collate} {$charset_collate} ;"; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); dbDelta($sql); } ?>