blogid; // Get all blog ids $blogids = $wpdb->get_col($wpdb->prepare("SELECT blog_id FROM $wpdb->blogs")); foreach ($blogids as $blog_id) { switch_to_blog($blog_id); _amenities_install(); } switch_to_blog($old_blog); return; } } _amenities_install(); } // Create database entries function _amenities_install() { global $wpdb; $structure = "CREATE TABLE IF NOT EXISTS ".$wpdb->prefix."amenities ( `id` INT NOT NULL AUTO_INCREMENT, `title` VARCHAR(255) NOT NULL, `sort` INT NULL DEFAULT 0, PRIMARY KEY (`id`) )"; $wpdb->query($structure); } // Install for new blogs function new_blog($blog_id, $user_id, $domain, $path, $site_id, $meta) { global $wpdb; if (is_plugin_active_for_network('amenities/amenities_function.php')) { $old_blog = $wpdb->blogid; switch_to_blog($blog_id); _amenities_install(); switch_to_blog($old_blog); } } // Clean up on de-activate function amenities_remove() { global $wpdb; if (function_exists('is_multisite') && is_multisite()) { // check if it is a network activation - if so, run the activation function for each blog id if (isset($_GET['networkwide']) && ($_GET['networkwide'] == 1)) { $old_blog = $wpdb->blogid; // Get all blog ids $blogids = $wpdb->get_col($wpdb->prepare("SELECT blog_id FROM $wpdb->blogs")); foreach ($blogids as $blog_id) { switch_to_blog($blog_id); _amenities_remove(); } switch_to_blog($old_blog); return; } } _amenities_remove(); } // Remove tables function _amenities_remove() { global $wpdb; $table = $wpdb->prefix . 'amenities'; $sql = "DROP TABLE IF EXISTS " . $table; $wpdb->query($sql); } function amenities_admin_menu() { add_menu_page('Amenities', 'Amenities', 'administrator', 'amenities', 'amenities_html_page'); } // Show list of amenites and CRUD options function amenities_html_page() { if(isset($_POST['action']) && ($_POST['action'] == 'add') ) { $errors = array(); global $wpdb; if($_POST['title'] != '') { $title = $wpdb->escape( $_POST['title'] ); } else { $errors['title'] = 'You must provide a title.'; } if(isset($_POST['sort']) && is_int($_POST['sort'])) { $sort = $wpdb->escape( $_POST['sort'] ); } else { $sort = '0'; } if(count($errors) == 0) { $sql = 'INSERT INTO '.$wpdb->prefix.'amenities (title, sort) VALUES ("'.$title.'", "'.$sort.'")'; $wpdb->query($sql); echo '
Amenity successfully added.
Amenity successfully deleted.
| Title | Sort | Edit | Delete |
|---|---|---|---|
| title; ?> | sort; ?> |