" . $values['message'] . ""; $cleanup_values['value_array']['revisions'] = $values['value']; } if (isset($cleanupType["clean-autodraft"])) { $values = self::cleanup_type_process('autodraft'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['autodraft'] = $values['value']; } if (isset($cleanupType["clean-comments"])) { $values = self::cleanup_type_process('spam'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['spam'] = $values['value']; } if (isset($cleanupType["unapproved-comments"])) { $values = self::cleanup_type_process('unapproved'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['unapproved'] = $values['value']; } if (isset($cleanupType["trash-post"])) { $values = self::cleanup_type_process('trash-post'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['trash-post'] = $values['value']; } if (isset($cleanupType["trash-comments"])) { $values = self::cleanup_type_process('trash-comments'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['trash-comments'] = $values['value']; } if (isset($cleanupType["meta-comments"])) { $values = self::cleanup_type_process('meta-comments'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['meta-comments'] = $values['value']; } if (isset($cleanupType["meta-posts"])) { $values = self::cleanup_type_process('meta-posts'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['meta-posts'] = $values['value']; } if (isset($cleanupType["pingbacks"])) { $values = self::cleanup_type_process('pingbacks'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['pingbacks'] = $values['value']; } if (isset($cleanupType["trackbacks"])) { $values = self::cleanup_type_process('trackbacks'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['trackbacks'] = $values['value']; } $text .= '
'; if (isset($cleanupType["optimize-db"])) { $values = self::cleanup_type_process('optimize-db'); $text .= "" . $values['message'] . ""; $cleanup_values['value_array']['optimize-db'] = $values['value']; //$text .= DB_NAME.__(" Database Optimized!
", 'wp-optimize'); } if ($text !==''){ $cleanup_values['message'] = $text; return $cleanup_values; } } function cleanup_type_process($cleanupType, $numberOfRevisions = 0){ global $wpdb; $clean = ""; $message = ""; $message_array = array(); //$message_array['value'] = array(); $optimized = array(); switch ($cleanupType) { case "revisions": $revisionWhere = ''; if (!empty($numberOfRevisions) && $numberOfRevisions != 0) { $numberOfRevisions = absint($numberOfRevisions); $revisionQuery = $wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_type = 'revision' ORDER BY ID DESC LIMIT %d", $numberOfRevisions); $revisionIDs = $wpdb->get_results( $revisionQuery, ARRAY_N ); $revisionsIDsArray = array(); foreach ($revisionIDs as $key => $revisionID) { if ($revisionID) { $revisionsIDsArray[]= $revisionID[0]; } } $revisionWhere = " AND ID NOT IN('".implode("', '", $revisionsIDsArray)."')"; } $clean = "DELETE FROM $wpdb->posts WHERE post_type = 'revision'".$revisionWhere; $revisions = $wpdb->query( $clean ); $message .= __('Post revisions deleted - ', 'wp-optimize') . $revisions; $message_array['value'] = $revisions; //$message_array['del_post_rev']['message'] = $revisions.__(' post revisions deleted
', 'wp-optimize'); break; case "autodraft": $clean = "DELETE FROM $wpdb->posts WHERE post_status = 'auto-draft'"; $autodraft = $wpdb->query( $clean ); $message .= __('Auto drafts deleted - ', 'wp-optimize') . $autodraft; $message_array['value'] = $autodraft; //$message_array['del_auto_drafts']['message'] = $autodraft.__(' auto drafts deleted
', 'wp-optimize'); break; case "spam": $clean = "DELETE FROM $wpdb->comments WHERE comment_approved = 'spam';"; $comments = $wpdb->query( $clean ); $message .= __('Spam comments deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; //$message_array['del_spam_comments']['message'] = $comments.__(' spam comments deleted
', 'wp-optimize'); break; case "unapproved": $clean = "DELETE FROM $wpdb->comments WHERE comment_approved = '0';"; $comments = $wpdb->query( $clean ); $message .= __('Unapproved comments deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; //$message_array['del_unapproved_comments']['message'] = $comments.__(' unapproved comments deleted
', 'wp-optimize'); break; case "trash-post": $clean = "DELETE FROM $wpdb->posts WHERE post_status = 'trash';"; $comments = $wpdb->query( $clean ); $message .= __('Trashed posts deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; //$message_array['del_unapproved_comments']['message'] = $comments.__(' unapproved comments deleted
', 'wp-optimize'); break; case "trash-comments": $clean = "DELETE FROM $wpdb->comments WHERE comment_approved = 'trash';"; $comments = $wpdb->query( $clean ); $message .= __('Trashed comments deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; break; case "meta-comments": $clean = "DELETE cm FROM $wpdb->commentmeta cm LEFT JOIN $wpdb->comments wp ON wp.comment_ID = cm.comment_id WHERE wp.comment_ID IS NULL"; $comments = $wpdb->query( $clean ); $message .= __('Unused comments metadata deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; break; case "meta-posts": $clean = "DELETE pm FROM $wpdb->postmeta pm LEFT JOIN $wpdb->posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL;"; $comments = $wpdb->query( $clean ); $message .= __('Unused posts metadata deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; break; case "pingbacks": $clean = "DELETE FROM $wpdb->comments WHERE comment_type = 'pingback';"; $comments = $wpdb->query( $clean ); $message .= __('Pingbacks deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; break; case "trackbacks": $clean = "DELETE FROM $wpdb->comments WHERE comment_type = 'trackback';"; $comments = $wpdb->query( $clean ); $message .= __('Trackbacks deleted - ', 'wp-optimize') . $comments; $message_array['value'] = $comments; break; case "optimize-db": self::optimize_tables(true); $message .= "Database ".DB_NAME." Optimized!"; $message_array['value'] = DB_NAME; break; default: $message .= __('NO Actions Taken', 'wp-optimize'); $message_array['value'] = 0; break; } // end of switch $message_array['message'] = $message; return $message_array; } // end of function function optimize_tables($Optimize=false){ global $wpdb; $db_clean = DB_NAME; $local_query = 'SHOW TABLE STATUS FROM `'. $db_clean.'`'; $result = $wpdb->get_results($local_query); if ($wpdb->num_rows){ foreach ($result as $row) { $local_query = 'OPTIMIZE TABLE '.$row->Name; $resultat = $wpdb->get_results($local_query); } } } } ?>