Пример #1
0
 public function __construct($plugin_id, $object)
 {
     if ($plugin_id) {
         $this->plugin_id = $plugin_id;
     } else {
         return false;
     }
     if ($object instanceof _q2w3_table_obj) {
         $this->object = $object;
     } else {
         return false;
     }
     if ($GLOBALS['wpdb']) {
         $this->wpdb = $GLOBALS['wpdb'];
     } else {
         return false;
     }
     $this->user_options_var = q2w3_table_func::safe_plugin_id($this->plugin_id) . '_table_settings';
     $this->user_settings_load();
     $this->create_new_button_text = __('Add New', $this->plugin_id);
 }
Пример #2
0
 public static function deactivation()
 {
     if (isset($_POST['deactivate']) && $_POST['deactivate'] == 'deactivate' || $_POST['deactivate'] == 'deactivate_and_clean') {
         // process deactivation options
         global $wpdb;
         require_once ABSPATH . 'wp-admin/includes/plugin.php';
         $redirect_url = get_option('siteurl') . '/wp-admin/plugins.php?deactivate=true';
         if ($_POST['deactivate'] == 'deactivate') {
             // simple deactivation
             deactivate_plugins(plugin_basename(__FILE__));
             wp_redirect($redirect_url);
         } elseif ($_POST['deactivate'] == 'deactivate_and_clean') {
             // advanced deactivation (delete tables and settings)
             self::object();
             deactivate_plugins(plugin_basename(__FILE__));
             // deactivate plugin
             $wpdb->query('DELETE FROM ' . $wpdb->options . " WHERE option_name LIKE '%q2w3_inc_manager%'");
             // delete all plugin entries in options table
             $wpdb->query('DELETE FROM ' . $wpdb->usermeta . " WHERE meta_key = '" . q2w3_table_func::safe_plugin_id(self::ID) . "_table_settings'");
             // delete all plugin entries in usermeta table
             $wpdb->query('DROP TABLE IF EXISTS ' . self::$object->table());
             // delete includes table
             wp_redirect($redirect_url);
         }
     }
 }