WordPress自定义栏目功能不仅强大,而且非常实用,不少Wordpress主题和插件都使用自定义栏目来实现各种功能。
我们使用的文章浏览数统计插件WP-PostViews,就是在数据库中写入自定义栏目 ▼
views
用过的wordpress主题或插件,停用删除后,通常都会在数据库中保留他们的自定义栏目。
要是数据量巨大,每次网站查询数据库,都会造成主机RAM内存的消耗,绝对会影响网站的如常运行。
我们做SEO,写文章不止一篇,若通过手动删除掉这些垃圾的自定义栏目,根本就不切实际。
其实,我们只需要在phpMyAdmin执行一句SQL命令,就可在数据库中,批量删除掉这些垃圾的自定义栏目。
注意事项
由于WordPress批量删除自定义栏目,是涉及到MySQL数据库的操作,有一定的风险。
所以,请务必做好数据库备份,才好进行数据库操作。
方法1:数据库命令删除多余自定义栏目(推荐)
1)登录phpMyAdmin数据库后,选择你的数据库。
2)点击数据库上面 “SQL”。
3)在 “SQL” 输入并执行以下的命令:
DELETE FROM wp_postmeta WHERE meta_key = "自定义栏目名称";
4)然后,在你的网站文章中查看该自定义栏目,确认是否已经成功删除。
方法2:PHP代码删除多余自定义栏目
1)请添加如下代码到当前主题的functions.php文件 ▼
global $wpdb; $wpdb->query( " DELETE FROM $wpdb->postmeta WHERE `meta_key` = '栏目名称' " );
2)修改 “栏目名称” 为你想删除的自定义栏目。
- 该自定义栏目,将自动从数据库中被清除。
3)此代码只在需要时才用:
- 在完成删除任务后请务必删除掉。
- 若下次要用,请再次添加到当前主题的functions.php文件里,
- 因为需要添加又删除,比较麻烦,所以不推荐。
删除没用的postmeta记录
可能已删除日志的记录,但日志扩展表 postmeta 中的数据尚未删除,所以只有已手动清除了。
1)登录phpMyAdmin数据库后,选择你的数据库。
2)点击数据库上面 “SQL”。
3)在 “SQL” 输入并执行以下的命令 ▼
DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL