posts WHERE post_type = 'revision'";
$wpdb->query($wcu_sql);
break;
case "draft":
$wcu_sql = "DELETE FROM $wpdb->posts WHERE post_status = 'draft'";
$wpdb->query($wcu_sql);
break;
case "autodraft":
$wcu_sql = "DELETE FROM $wpdb->posts WHERE post_status = 'auto-draft'";
$wpdb->query($wcu_sql);
break;
case "moderated":
$wcu_sql = "DELETE FROM $wpdb->comments WHERE comment_approved = '0'";
$wpdb->query($wcu_sql);
break;
case "spam":
$wcu_sql = "DELETE FROM $wpdb->comments WHERE comment_approved = 'spam'";
$wpdb->query($wcu_sql);
break;
case "trash":
$wcu_sql = "DELETE FROM $wpdb->comments WHERE comment_approved = 'trash'";
$wpdb->query($wcu_sql);
break;
case "postmeta":
$wcu_sql = "DELETE pm FROM $wpdb->postmeta pm LEFT JOIN $wpdb->posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL";
$wpdb->query($wcu_sql);
break;
case "commentmeta":
$wcu_sql = "DELETE FROM $wpdb->commentmeta WHERE comment_id NOT IN (SELECT comment_id FROM $wpdb->comments)";
$wpdb->query($wcu_sql);
break;
case "relationships":
$wcu_sql = "DELETE FROM $wpdb->term_relationships WHERE term_taxonomy_id=1 AND object_id NOT IN (SELECT id FROM $wpdb->posts)";
$wpdb->query($wcu_sql);
break;
case "feed":
$wcu_sql = "DELETE 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_%'";
$wpdb->query($wcu_sql);
break;
}
}
function wp_clean_up_count($type)
{
global $wpdb;
switch ($type) {
case "revision":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->posts WHERE post_type = 'revision'";
$count = $wpdb->get_var($wcu_sql);
break;
case "draft":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->posts WHERE post_status = 'draft'";
$count = $wpdb->get_var($wcu_sql);
break;
case "autodraft":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->posts WHERE post_status = 'auto-draft'";
$count = $wpdb->get_var($wcu_sql);
break;
case "moderated":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = '0'";
$count = $wpdb->get_var($wcu_sql);
break;
case "spam":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = 'spam'";
$count = $wpdb->get_var($wcu_sql);
break;
case "trash":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = 'trash'";
$count = $wpdb->get_var($wcu_sql);
break;
case "postmeta":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->postmeta pm LEFT JOIN $wpdb->posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL";
//$wcu_sql = "SELECT COUNT(*) FROM $wpdb->postmeta WHERE NOT EXISTS ( SELECT * FROM $wpdb->posts WHERE $wpdb->postmeta.post_id = $wpdb->posts.ID )";
$count = $wpdb->get_var($wcu_sql);
break;
case "commentmeta":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->commentmeta WHERE comment_id NOT IN (SELECT comment_id FROM $wpdb->comments)";
$count = $wpdb->get_var($wcu_sql);
break;
case "relationships":
$wcu_sql = "SELECT COUNT(*) FROM $wpdb->term_relationships WHERE term_taxonomy_id=1 AND object_id NOT IN (SELECT id FROM $wpdb->posts)";
$count = $wpdb->get_var($wcu_sql);
break;
case "feed":
$wcu_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_%'";
$count = $wpdb->get_var($wcu_sql);
break;
}
return $count;
}
function wp_clean_up_optimize()
{
global $wpdb;
$wcu_sql = 'SHOW TABLE STATUS FROM `' . DB_NAME . '`';
$result = $wpdb->get_results($wcu_sql);
foreach ($result as $row) {
$wcu_sql = 'OPTIMIZE TABLE ' . $row->Name;
$wpdb->query($wcu_sql);
}
}
$wcu_message = '';
if (isset($_POST['wp_clean_up_revision'])) {
wp_clean_up('revision');
$wcu_message = "所有修改版本已删除!";
}
if (isset($_POST['wp_clean_up_draft'])) {
wp_clean_up('draft');
$wcu_message = "所有草稿已删除!";
}
if (isset($_POST['wp_clean_up_autodraft'])) {
wp_clean_up('autodraft');
$wcu_message = "所有自动草稿已删除!";
}
if (isset($_POST['wp_clean_up_moderated'])) {
wp_clean_up('moderated');
$wcu_message = "所有待审评论已删除!";
}
if (isset($_POST['wp_clean_up_spam'])) {
wp_clean_up('spam');
$wcu_message = "所有垃圾评论已删除!";
}
if (isset($_POST['wp_clean_up_trash'])) {
wp_clean_up('trash');
$wcu_message = "所有回收站评论已删除!";
}
if (isset($_POST['wp_clean_up_postmeta'])) {
wp_clean_up('postmeta');
$wcu_message = "所有孤立的文章元信息!";
}
if (isset($_POST['wp_clean_up_commentmeta'])) {
wp_clean_up('commentmeta');
$wcu_message = "所有孤立的评论元信息!";
}
if (isset($_POST['wp_clean_up_relationships'])) {
wp_clean_up('relationships');
$wcu_message = "所有孤立的关系信息!";
}
if (isset($_POST['wp_clean_up_feed'])) {
wp_clean_up('feed');
$wcu_message = "所有控制板订阅缓存!";
}
if (isset($_POST['wp_clean_up_all'])) {
wp_clean_up('revision');
wp_clean_up('draft');
wp_clean_up('autodraft');
wp_clean_up('moderated');
wp_clean_up('spam');
wp_clean_up('trash');
wp_clean_up('postmeta');
wp_clean_up('commentmeta');
wp_clean_up('relationships');
wp_clean_up('feed');
$wcu_message = "所有冗余数据已删除!";
}
if (isset($_POST['wp_clean_up_optimize'])) {
wp_clean_up_optimize();
$wcu_message = "数据库已优化!";
}
if ($wcu_message != '') {
echo '