蓦然已经写了几篇日志了,结果回过头来发现各日志之间的postid并不是紧挨着的,而是没有规律的跨数字段增加,比如第一篇日志“千百度正式上线 欢迎大家围观!”的地址是:http://www.xbaidu.net/1.htm,第二篇日志“WordPress相册插 件:Pyramid Gallery FX”的地址却是:http://www.xbaidu.net/120.htm!这跨度也太大了吧?!后面和篇日志也是同样的情况,究其原因,有以下几个方面:
1、日志的自动修订功能Revision占用ID;
2、日志的自动保存功能也占用ID;
3、利用系统上传的图片附件要占用ID,如果上传多个图片,都要占用ID的;
第3条图片附件占用ID的问题在系统内部是无法解决的,除非不上传附件,最好的办法就是外链,把图片上传到别的地上,调用到日志里。
本文就是要介绍一下关闭自动修订功能和自动保存功能的解决办法:
一、关闭自动修订功能解决办法:
但是当你有一定数量的文章,而不需要保存修订记录时,修订记录就反而成为了增加数据库负担的一个功能。当然有现成的插件可以帮你关闭并删除修订记录的功 能,这里简单介绍一些不用插件的办法。打开安装目录下的 wp-config.php 并找到这行:
require_once(ABSPATH . 'wp-settings.php');
在这行前面的任意地方,甚至可以是文件的开头,加入:
define('WP_POST_REVISIONS', false);
保存之后,自动修订功能就关闭了。
二、关闭自动保存功能解决办法:
事实上自动保存功能也会在数据库内部产生修订记录。如果不通过插件或者修改程序代码的话,标准的WordPress是无法真正的关闭自动保存功能的,但是允许你设置每次自动保存的间隔。因此你可以设置个一天的,找到wp-settings.php文件,找到
define( 'AUTOSAVE_INTERVAL', 60 );
把自动保存时间改为一天:
define('AUTOSAVE_INTERVAL', 86400 );
或改为一年:
define('AUTOSAVE_INTERVAL', 31536000 );
这样就实现了在短时间无法自动保存的目的,同时也不会产生修订记录了。
附:如果你原插件不反感,你可以使用Super Switch超级开关插件简单实现自动保存功能的关闭。
如果想在这个点上达到最大程度优化,你也可以删掉原有的修订记录,只要连进数据库并按顺序运行以下SQL语句:
DELETE FROM wp_postmeta WHERE post_id IN (SELECT id FROM wp_posts WHERE post_type = "revision");
DELETE FROM wp_term_relationships WHERE object_id IN (SELECT id FROM wp_posts WHERE post_type="revision");
DELETE FROM wp_posts WHERE post_type = "revision";
这样,就把以前的修订记录清理干净了。
还是插件来得快捷,一看代码头就大了,汗
去试试去~呵呵。