大家在发表和编辑文章的时候,可能都不喜欢WordPress 自动保存(AutoSave)和文章历史修订版本(Revisions)的功能。一方面网速不好的时候,它会影响编辑和发表文章页面的加载速度;另一方面这些文章的历史修订版本都会写入数据库保存,无形中大大增加了数据库的膨胀速度,冗余数据太多也影响数据库的存取查询效率。wp管理后台并没有提供关闭功能选项。那么如何禁用WordPress自动保存和文章历史修订版本功能呢?这也是WordPress优化数据库第一步要做的内容。下面是涅槃就这个问题收集的各种解决方法,这里主要推荐非插件的解决方案,后面会对此类插件进行列举。
禁用WordPress 自动保存功能(AutoSave) 个人觉得WordPress自动保存功能对于经常写原创文章的wper来说还是比较实用的。有时候花了很长时间写一篇博客文章,若突然碰到停电,电脑死机之类的突发情况,没有自动保存那将是很郁闷的事情,所以建议最好还是不要禁用WordPress自动保存功能。如果你是用office word文档等其他编辑器,那就完全可以用下面的方法关闭WordPress自动保存功能: 找到wordpress/wp-admin/目录下的post-new.php,post.php,page-new.php,page.php这四个文件。找到代码wp\_enqueue\_script('autosave');?直接删除,或者在前面加上”//”将代码注释掉:
// wp_enqueue_script('autosave');? 或者打开wp-config.php文件,在 require_once(ABSPATH . 'wp-settings.php'); 前添加这段代码: define('AUTOSAVE_INTERVAL', 3600 );? AUTOSAVE_INTERVAL表示自动保存的时间间隔,3600表示1个小时,时间随意设,1小时差不多也写完了。
禁用WordPress文章历史修订版本(Revisions) 同关闭自动保存功能一样,在wp-config.php中的代码?
require_once(ABSPATH . 'wp-settings.php');?前增加以下代码即可:
define('WP_POST_REVISIONS',false);
关于 WP\_POST\_REVISIONS 这个常量的详细设置为:
- true(默认)或者 -1:保存所有修订版本
- false 或者 0:不保存任何版本(除了自动保存的版本)
- 大于 0 的整数 n:保存 n 个修订版本(+1 只保存自动保存版本),旧的版本将被删除。
清理数据库中以前的文章历史修订版本 另外你也可以通过phpmyadmin定期清理和删除数据库中的冗余文章修订版本,清理以前的文章修订版本也一样。数据库操作前最好先进行备份。在 phpmyadmin 中进行数据库管理,SQL语句命令行中写入以下运行代码执行(若你设置了数据库表名的前缀,需要将数据表名称中wp改成你的前缀):
DELETE FROM \`wp\_posts\` WHERE \`post\_type\`='revision' 另外还可以再用SQL语句:
DELETE FROM \`wp\_postmeta\` WHERE \`meta\_key\`= '\_edit\_lock' DELETE FROM \`wp\_postmeta\` WHERE \`meta\_key\` ='\_edit\_last' 删除数据库中文章特殊数据表wp\_postmeta中meta\_key字段为\_edit\_lock(代表上次修改post的修改时间)和\_edit\_last(指最后一次编辑时间)的数据,然后全选所有表,下拉列表中选择使用phpmyadmin“优化表”功能。
非插件免修改源码实现wordpress禁止文章修订和自动保存 使用方法很简单,只要在主题目录中的functions.php添加相应代码就行了,代码如下:
remove_action('pre_post_update',?'wp_save_post_revision'?); add_action(?'wp_print_scripts',?'disable_autosave'?); function?disable_autosave(){ wp_deregister_script('autosave'); }测试环境:WordPress 3.1.2,原理上 3.0 以上都支持。
禁用wordpress文章修订和自动保存的插件
关闭WordPress自动保存:disable-autosave 禁用修订版本插件同时自动删除以前的修订版本、数据库优化:Disable Revisions 禁用wordpress文章修订和自动保存:super-switch
pewenvqsod Lv.1
昨天 04:05
博主太厉害了!