if (!defined('WPO_VERSION')) die('No direct access allowed'); class WP_Optimization_repairtables extends WP_Optimization { public $available_for_auto = false; public $setting_default = true; public $changes_table_data = true; public $run_multisite = false; /** * Display or hide optimization in optimizations list. * * @return bool */ public function display_in_optimizations_list() { return false; } /** * Run optimization. */ public function optimize() { // check if single table name posted or optimize all tables. if (isset($this->data['optimization_table']) && '' != $this->data['optimization_table']) { $table = $this->optimizer->get_table($this->data['optimization_table']); $result = $this->repair_table($table); if ($result) { $wp_optimize = WP_Optimize(); $tablestatus = $wp_optimize->get_db_info()->get_table_status($table->Name, true); $is_optimizable = $wp_optimize->get_db_info()->is_table_optimizable($table->Name); $tableinfo = array( 'rows' => number_format_i18n($tablestatus->Rows), 'data_size' => $wp_optimize->format_size($tablestatus->Data_length), 'index_size' => $wp_optimize->format_size($tablestatus->Index_length), 'overhead' => $is_optimizable ? $wp_optimize->format_size($tablestatus->Data_free) : '-', 'type' => $table->Engine, 'is_optimizable' => $is_optimizable, ); $this->register_meta('tableinfo', $tableinfo); } $this->register_meta('success', $result); } else { $tables = $this->optimizer->get_tables(); $repaired = $corrupted = 0; foreach ($tables as $table) { if (false == $table->is_needing_repair) continue; if ($this->repair_table($table)) { $repaired++; } else { $corrupted++; } } $this->register_output(sprintf(_n('%s table repaired', '%s tables repaired', $repaired), $repaired)); if ($corrupted > 0) { $this->register_output(sprintf(_n('Repairing %s table was unsuccessful', 'Repairing %s tables were unsuccessful', $corrupted), $corrupted)); } } } /** * Repair table. * * @param object $table_obj object contains information about database table. * * @return bool */ private function repair_table($table_obj) { global $wpdb; $success = false; if (false == $table_obj->is_needing_repair) return true; $this->logger->info('REPAIR TABLE '.$table_obj->Name); $results = $wpdb->get_results('REPAIR TABLE '.$table_obj->Name); if (!empty($results)) { foreach ($results as $row) { if ('status' == strtolower($row->Msg_type) && 'ok' == strtolower($row->Msg_text)) { $success = true; } $this->logger->info($row->Msg_text); } } return $success; } /** * Register info about optimization. */ public function get_info() { $tablesinfo = $this->optimizer->get_tables(); $corrupted_tables = 0; if (!empty($tablesinfo)) { foreach ($tablesinfo as $tableinfo) { if ($tableinfo->is_needing_repair) { $corrupted_tables++; } } } if (0 == $corrupted_tables) { $this->register_output(__('No corrupted tables found', 'wp-optimize')); } else { $this->register_output(sprintf(_n('%s corrupted table found', '%s corrupted tables found', $corrupted_tables), $corrupted_tables)); } } /** * Returns settings label. * * @return string */ public function settings_label() { return __('Repair database tables', 'wp-optimize'); } } Termite Control Product Archives - Pest Control Specialist Malaysia
Termite Control Product Archives - Pest Control Specialist Malaysia
66
archive,tax-product_cat,term-termite-control-product,term-66,woocommerce,woocommerce-page,woocommerce-no-js,ajax_fade,page_not_loaded,,qode_grid_1300,hide_top_bar_on_mobile_header,qode-content-sidebar-responsive,columns-4,qode-theme-ver-13.2,qode-theme-bridge,wpb-js-composer js-comp-ver-5.4.5,vc_responsive

No products were found matching your selection.

Facebook
Watch Youtube
E-Store
WhatsApp chat