WP数据库优化

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 '

' . $wcu_message . '

'; } ?>

类型 数量 操作
修订版本
草稿
自动草稿
待审评论
垃圾评论
回收站评论
孤立的文章元信息
孤立的评论元信息
孤立的关系信息
控制板订阅缓存


get_results($wcu_sql); foreach ($result as $row) { $table_size = $row->Data_length + $row->Index_length; $table_size = $table_size / 1024; $table_size = sprintf("%0.3f", $table_size); $every_size = $row->Data_length + $row->Index_length; $every_size = $every_size / 1024; $total_size += $every_size; echo " \n"; $alternate = (empty($alternate)) ? " class='alternate'" : ""; } ?>
数据表 大小
" . $row->Name . " " . $table_size . " KB" . "
总共