function wpo_getInfo($cleanupType) { global $wpdb; $sql = ""; $message = ""; list($retention_enabled, $retention_period) = wpo_getRetainInfo(); switch ($cleanupType) { case "transient_options": $sql = "SELECT COUNT(*) FROM `{$wpdb->options}` WHERE option_name LIKE '_transient_%' OR option_name LIKE '_site_transient_%'"; $sql .= ';'; $transient_options = $wpdb->get_var($sql); if (!$transient_options == 0 || !$transient_options == NULL) { $message .= ' ' . $transient_options . ' ' . __('transient options in your database', 'wp-optimize'); } else { $message .= ' ' . __('No transient options found', 'wp-optimize'); } break; case "postmeta": $sql = "SELECT COUNT(*) FROM `{$wpdb->postmeta}` pm LEFT JOIN `{$wpdb->posts}` wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL"; $sql .= ';'; $postmeta = $wpdb->get_var($sql); if (!$postmeta == 0 || !$postmeta == NULL) { $message .= ' ' . $postmeta . ' ' . __('orphaned postmeta in your database', 'wp-optimize'); } else { $message .= ' ' . __('No orphaned postmeta in your database', 'wp-optimize'); } break; case "tags": $sql = "SELECT COUNT(*) FROM `{$wpdb->terms}` t INNER JOIN `{$wpdb->term_taxonomy}` tt ON t.term_id=tt.term_id WHERE tt.taxonomy='post_tag' AND tt.count=0"; $sql .= ';'; $tags = $wpdb->get_var($sql); if (!$tags == 0 || !$tags == NULL) { $message .= ' ' . $tags . ' ' . __('unused tags in your database', 'wp-optimize'); } else { $message .= ' ' . __('No unused tags found', 'wp-optimize'); } break; case "revisions": $sql = "SELECT COUNT(*) FROM `{$wpdb->posts}` WHERE post_type = 'revision'"; if ($retention_enabled == 'true') { $sql .= ' and post_modified < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $revisions = $wpdb->get_var($sql); if (!$revisions == 0 || !$revisions == NULL) { $message .= ' ' . $revisions . ' ' . __('post revisions in your database', 'wp-optimize'); } else { $message .= ' ' . __('No post revisions found', 'wp-optimize'); } break; case "autodraft": $sql = "SELECT COUNT(*) FROM `{$wpdb->posts}` WHERE post_status = 'auto-draft'"; if ($retention_enabled == 'true') { $sql .= ' and post_modified < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $autodraft = $wpdb->get_var($sql); if (!$autodraft == 0 || !$autodraft == NULL) { $message .= ' ' . $autodraft . ' ' . __('auto draft post(s) in your database', 'wp-optimize'); } else { $message .= ' ' . __('No auto draft posts found', 'wp-optimize'); } break; case "spam": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_approved = 'spam'"; if ($retention_enabled == 'true') { $sql .= ' and comment_date < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . $comments . ' ' . __('spam comments found', 'wp-optimize') . ' | <a href="edit-comments.php?comment_status=spam">' . ' ' . __('Review', 'wp-optimize') . '</a>'; } else { $message .= ' ' . __('No spam comments found', 'wp-optimize'); } // TODO: still need to test 2 more sections for info - still need to test // $sql = "SELECT * FROM $wpdb->commentmeta WHERE comment_id NOT IN ( SELECT comment_id FROM $wpdb->comments )"; // $sql .= ';'; // $comments_meta = $wpdb->query( $sql ); // if(!$comments_meta == NULL || !$comments_meta == 0){ // $message .= ' | '.$comments_meta.' '.__('Unused comment meta found', 'wp-optimize'); // } // // // $sql = "SELECT * FROM $wpdb->commentmeta WHERE meta_key LIKE '%akismet%'"; // $sql .= ';'; // $comments_meta2 = $wpdb->query( $sql ); // if(!$comments_meta2 == NULL || !$comments_meta2 == 0){ // $message .= ' | '.$comments_meta2.' '.__('additional Akismet junk data found', 'wp-optimize'); // } break; case "unapproved": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_approved = '0'"; if ($retention_enabled == 'true') { $sql .= ' and comment_date < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . $comments . ' ' . __('unapproved comments found', 'wp-optimize') . ' | <a href="edit-comments.php?comment_status=moderated">' . ' ' . __('Review', 'wp-optimize') . '</a>'; } else { $message .= ' ' . __('No unapproved comments found', 'wp-optimize'); } break; case "pingbacks": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_type='pingback';"; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . $comments . ' ' . __('Pingbacks found', 'wp-optimize'); } else { $message .= ' ' . __('No pingbacks found', 'wp-optimize'); } break; case "trackbacks": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_type='trackback';"; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . $comments . ' ' . __('Trackbacks found', 'wp-optimize'); } else { $message .= ' ' . __('No trackbacks found', 'wp-optimize'); } break; default: $message .= __('nothing', 'wp-optimize'); break; } // end of switch return $message; }
function wpo_getInfo($cleanupType) { global $wpdb; $sql = ""; $message = ""; list($retention_enabled, $retention_period) = wpo_getRetainInfo(); switch ($cleanupType) { case "transient": $sql = "SELECT COUNT(*) FROM `{$wpdb->options}` WHERE option_name LIKE '_site_transient_browser_%' OR option_name LIKE '_site_transient_timeout_browser_%' OR option_name LIKE '_transient_feed_%' OR option_name LIKE '_transient_timeout_feed_%'"; //$sql .= ';'; $transient = $wpdb->get_var($sql); if (!$transient == 0 || !$transient == NULL) { $message .= ' ' . sprintf(_n('%d transient option in your database', '%d transient options in your database', $transient, 'wp-optimize'), number_format_i18n($transient)); } else { $message .= ' ' . __('No transient options found', 'wp-optimize'); } break; case "postmeta": $sql = "SELECT COUNT(*) FROM `{$wpdb->postmeta}` pm LEFT JOIN `{$wpdb->posts}` wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL"; $sql .= ';'; $postmeta = $wpdb->get_var($sql); if (!$postmeta == 0 || !$postmeta == NULL) { $message .= ' ' . sprintf(_n('%d orphaned post meta data in your database', '%d orphaned postmeta in your database', $postmeta, 'wp-optimize'), number_format_i18n($postmeta)); } else { $message .= ' ' . __('No orphaned post meta data in your database', 'wp-optimize'); } break; case "commentmeta": $sql = "SELECT COUNT(*) FROM `{$wpdb->commentmeta}` WHERE comment_id NOT IN (SELECT comment_id FROM `{$wpdb->comments}`)"; $sql .= ';'; $commentmeta = $wpdb->get_var($sql); if (!$commentmeta == 0 || !$commentmeta == NULL) { $message .= ' ' . sprintf(_n('%d orphaned comment meta data in your database', '%d orphaned comment meta data in your database', $commentmeta, 'wp-optimize'), number_format_i18n($commentmeta)); } else { $message .= ' ' . __('No orphaned comment meta data in your database', 'wp-optimize'); } break; case "orphandata": $sql = "SELECT COUNT(*) FROM `{$wpdb->term_relationships}` WHERE term_taxonomy_id=1 AND object_id NOT IN (SELECT id FROM `{$wpdb->posts}`)"; $sql .= ';'; $orphandata = $wpdb->get_var($sql); if (!$orphandata == 0 || !$orphandata == NULL) { $message .= ' ' . sprintf(_n('%d orphaned relationship data in your database', '%d orphaned relationship data in your database', $orphandata, 'wp-optimize'), number_format_i18n($orphandata)); } else { $message .= ' ' . __('No orphaned relationship data in your database', 'wp-optimize'); } break; // not used /*case "transient": $sql = "SELECT COUNT(*) FROM `$wpdb->options` WHERE option_name LIKE '_site_transient_browser_%' OR option_name LIKE '_site_transient_timeout_browser_%' OR option_name LIKE '_transient_feed_%' OR option_name LIKE '_transient_timeout_feed_%'"; $sql .= ';'; $transient = $wpdb->get_var( $sql ); if(!$transient == 0 || !$transient == NULL){ $message .= ' '.sprintf(_n('%d transient data in your database', '%d transient data in your database', $transient, 'wp-optimize'), number_format_i18n($transient)); } else $message .=' '.__('No transient data found', 'wp-optimize'); break;*/ // not used /*case "transient": $sql = "SELECT COUNT(*) FROM `$wpdb->options` WHERE option_name LIKE '_site_transient_browser_%' OR option_name LIKE '_site_transient_timeout_browser_%' OR option_name LIKE '_transient_feed_%' OR option_name LIKE '_transient_timeout_feed_%'"; $sql .= ';'; $transient = $wpdb->get_var( $sql ); if(!$transient == 0 || !$transient == NULL){ $message .= ' '.sprintf(_n('%d transient data in your database', '%d transient data in your database', $transient, 'wp-optimize'), number_format_i18n($transient)); } else $message .=' '.__('No transient data found', 'wp-optimize'); break;*/ case "revisions": $sql = "SELECT COUNT(*) FROM `{$wpdb->posts}` WHERE post_type = 'revision'"; if ($retention_enabled == 'true') { $sql .= ' and post_modified < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $revisions = $wpdb->get_var($sql); if (!$revisions == 0 || !$revisions == NULL) { $message .= ' ' . sprintf(_n('%d post revision in your database', '%d post revisions in your database', $revisions, 'wp-optimize'), number_format_i18n($revisions)); } else { $message .= ' ' . __('No post revisions found', 'wp-optimize'); } break; case "autodraft": $sql = "SELECT COUNT(*) FROM `{$wpdb->posts}` WHERE post_status = 'auto-draft'"; if ($retention_enabled == 'true') { $sql .= ' and post_modified < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $autodraft = $wpdb->get_var($sql); if (!$autodraft == 0 || !$autodraft == NULL) { $message .= ' ' . sprintf(_n('%d auto draft post in your database', '%d auto draft posts in your database', $autodraft, 'wp-optimize'), number_format_i18n($autodraft)); } else { $message .= ' ' . __('No auto draft posts found', 'wp-optimize'); } break; case "spam": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_approved = 'spam'"; if ($retention_enabled == 'true') { $sql .= ' and comment_date < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . sprintf(_n('%d spam comment found', '%d spam comments found', $comments, 'wp-optimize'), number_format_i18n($comments)) . ' | <a href="edit-comments.php?comment_status=spam">' . ' ' . __('Review', 'wp-optimize') . '</a>'; } else { $message .= ' ' . __('No spam comments found', 'wp-optimize'); } break; case "unapproved": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_approved = '0'"; if ($retention_enabled == 'true') { $sql .= ' and comment_date < NOW() - INTERVAL ' . $retention_period . ' WEEK'; } $sql .= ';'; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . sprintf(_n('%d unapproved comment found', '%d unapproved comments found', $comments, 'wp-optimize'), number_format_i18n($comments)) . ' | <a href="edit-comments.php?comment_status=moderated">' . ' ' . __('Review', 'wp-optimize') . '</a>'; } else { $message .= ' ' . __('No unapproved comments found', 'wp-optimize'); } break; case "pingbacks": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_type='pingback';"; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . sprintf(_n('%d Pingback found', '%d Pingbacks found', $comments, 'wp-optimize'), number_format_i18n($comments)); } else { $message .= ' ' . __('No pingbacks found', 'wp-optimize'); } break; case "trackbacks": $sql = "SELECT COUNT(*) FROM `{$wpdb->comments}` WHERE comment_type='trackback';"; $comments = $wpdb->get_var($sql); if (!$comments == NULL || !$comments == 0) { $message .= ' ' . sprintf(_n('%d Trackback found', '%d Trackbacks found', $comments, 'wp-optimize'), number_format_i18n($comments)); } else { $message .= ' ' . __('No trackbacks found', 'wp-optimize'); } break; default: $message .= __('nothing', 'wp-optimize'); break; } // end of switch return $message; }