1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

WordPress文章ID不连续的解决方法

本帖由 kobelltw2012-09-13 发布。版面名称:源码讨论

  1. kobelltw

    kobelltw New Member

    注册:
    2012-09-13
    帖子:
    253
    赞:
    0
    最近看到有许多朋友提到“WordPress文章ID不连续”怎么办?,其实笔者刚刚接触WordPress的时候就发现了这个问题,所以也是一开始就把WordPress的自动保存以及文章修订版本功能隐蔽。但是固定连接如果不用postid命名的话也许发现不了,但是大葱一直使用的就是这种固定链接。如果你网速不佳的时候,这会影响到文章的编辑以及发表页面的载入速度;另外每一次自动保存的文章草稿它都会自动写入我们的数据库,这样的话无形之中也就大大了数据库的储存,冗余数据太多的话也会影响到数据库的工作效率,另外也就是我们之前提到的文章ID不连续。
    WordPress仪表盘并没有直接的提供关闭这个功能的选项,那么今天就给大家讲讲如何把这个功能完完全全的隐蔽掉。
    方法1:
    WordPress默认是每60秒就会对文章进行自动保存,我个人是觉得太频繁了,那么我们可以打开博客根目录下的wp-config.php文件,搜索“require_once(ABSPATH . 'wp-settings.php');”在其前面/上面添加如下代码:
    //自动保存10小时一次
    define('AUTOSAVE_INTERVAL', 36000);
    //取消自动修订版
    define('WP_POST_REVISIONS',false);
    方法2:
    代码来源于国外网站,使用环境:WordPress 3.3.1,原理上 3.0 以上都支持,WP3.0.x 大葱没有进行测试。在我们当前使用主题的 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');
    }
    清理数据库中以前的文章历史修订版本
    自动保存和修订版本我们都解决了,接下来我们进行删除数据库中的冗余文章和修订版本,数据库操作之前大葱建议大家先进行备份。我们登录phpmyadmin 中进行数据库管理,SQL语句命令行中写入以下运行代码执行(如果更改了数据库表名的前缀,需要将数据表名称中wp改成你的前缀):
    delete from wp_posts where post_type='revision';
     
  2. aylite

    aylite New Member

    注册:
    2012-07-28
    帖子:
    174
    赞:
    0
    楼主的文章一直不错的