彻底解决wordpress文章ID不连续显示的问题
在最新版的 wordpress 系统中,依然存在着文章ID不连续显示的问题,也就是我们还没有上传多少文章,在数据库里的ID号已经很大了,也就是说如果我们的博客使用的是固定链接,那么在前台显示的ID相差会很大,比如第一篇文章是ID=2,那么第二篇可能就是ID=5或者ID=8了,这就是wordpress文章ID不连续显示的问题了。
其实这个也不能单纯的定义成wordpress的bug,毕竟人家的程序是这样设计的,可能程序上设计得过于完美了,但对于国内许多用户来说,可能更想要连续的ID吧,这样看起来更美观一点,而且对于我来说,数据库中也不会显得更凌乱,当然如果你的固定链接中没有使用post ID,那么对你来说文章ID是透明的,也就无关紧要了。即使固定链接中用了 post ID,如果你不是特别的在意,连不连续也是无关紧要的。
造成wordpress文章ID不连续的原因有如下两点,在 WordPress 系统的设计中,都会有一个自动草稿的功能,就是你在编辑文章的时候,每隔一定的时间会自动将文章保存成草稿,这样设计的目的是保证了在误修改的情况下可以还原之前的内容,但这样会占用数据库许多ID号。
对于我们这样的小博客来说,完全没有必要要这样的功能,那么如何去掉自动保存的草稿功能呢,请看我修改的最新版的 wordpress 系统的方法。
一,首先在 wp-config.php文件中添加如下代码,这两段代码我忘记wp-config.php中是不是已经有了,如果有了就改成如下的参数,如果没有加上去就行了,在测试的时候直接 false 禁用无效,所以后来索性将自动保存的时间间隔设置成了 120000000,这样无论你编辑多长时间都不会产生ID了。
/** 禁用修改版。 */
define('AUTOSAVE_INTERVAL', 120000000 ); // 设置自动保存间隔,单位是秒,默认60
define('WP_POST_REVISIONS', false ); // 禁用文章修订功能
二,还要在后台 wp-admin/ 目录下的 post.php 和 post-new.php 文件中删除掉保存成草稿的代码,如果不删除掉,还是会产生ID号的。
post.php 删除以下代码
[code lang="php"]
/* if ( $last = wp_check_post_lock( $post->ID ) ) {
add_action('admin_notices', '_admin_notice_post_locked' );
} else {
$active_post_lock = wp_set_post_lock( $post->ID );
if ( 'attachment' !== $post_type )
wp_enqueue_script('autosave');
} */
//$title = $post_type_object->labels->edit_item;
//$post = get_post($post_id, OBJECT, 'edit');
//if ( post_type_supports($post_type, 'comments') ) {
//wp_enqueue_script('admin-comments');
//enqueue_comment_hotkeys_js();
//}
[/code]
post-new.php 注释掉 wp_enqueue_script('autosave'); 即可。
总结:至此,已经禁用了文章保存草稿占用数据库ID的问题了,也基本上实现了文章无ID显示的问题了,但这里还有一点要说明的是,除了文章修订版占用大量ID号外,wordpress还有两个方面也会占用数据库的ID号,一个是插件主题,插件主题在设置页面导航时可能会占用几个数据库的ID号,但这是很少量的ID号了,通常不去更换导航,基本上就可以忽略不计了,另一个重点要说的是我们上传的附件也会大量占用ID号,比如上传一个图片,上传一个下载文件等,都会占用一个数据库的ID号,这个是没办法更改的,如果你对自己的页面特洁僻的话,就可以通过 FTP 来上传了,当然如果你能找到解决的方法,可以告诉我一下的,最后大家可以看一下我博客的ID号都是连续的效果。
博主真会折腾WP,为博主这精神支持!
我还是蛮喜欢那个自动保存的哈哈= =一般就是让他自己撸,然后自己再隔段时间删掉一些,至于ID我都已经改名了= =
亲 有什么插件来禁止么? 代码不会修改啊
上传图片也会占用ID号,您这个没有提到啊!
文章的最未端已有提到。
你可以在文件里找一下相关的编辑或添加的代码,可能是版本不一样,代码有所不同吧。
不行啊博主 我的还搞不定 你说的在后台那两个文件里面 都没有找到博主说的代码
博主 你可谓是这wp里面的专家了吧
升级记得改哦。。
记不住的可以使用插件控制 super switch; GD Press Tools
自动保存占用ID号也太不先进了吧。
这是Wp的程序设计,其实这个功能很贴心,很先进,只是对我们来说,不太需要这样的功能。
其实这个问题需要那么在意吗?如果太在意,我个人感觉比较好的解决方案就是把草稿通过其他关键字保存,取消和ID的关联;
因为对于大多数用户来说,草稿保存是一个很贴心的功能
取消与ID的关联,还是会产生ID的,其实保存草稿会保证了在误修改的情况下可以还原之前的内容,还是很贴心的。
其实我觉得不连续挺好的呀。也不会被猜到。
那就直接不用固定链接就行了。
连续ID也有利于搜索引擎收录
这个还真没尝试过,过段时间看一下。
恩,大网站效果比较明显,如资讯、电商类经常采用这类方式,可以看看他们的文章或单品页,这样搜索引擎抓取的时候可以绕开从旧页面抓新页面的方式,改为按数字规律直接抓新页面
你是不是研究wordpress了啊,我想用它做一个门户类的站,你们公司招人不,我去吧,哈哈
wordpress不适合做门户类的站点呀,我现在和你状况一样,家里顿呢。
很久没来过了,博主换成这种普通主题之后感觉还有点不太适应
之前的是pj主题博客。
博主的人气很旺呀,来沾沾光。
欢迎常来了。
原来都是自动保存惹得祸
自动保存占用大量的ID号。
这还真是一个难以解决的问题,以前我也注意到过。不过,不必为它而纠结。
解决这个问题确实挺头疼的。
wordpress可占cpu
wordpress一直有这个问题。
的确,wordpress博客文章ID不连续,当时我就搞不明白了,怎么就就不连续了呢,不过这没有什么影响。
基本上没什么影响,只要不在意,更改不更改都无所谓的。
没留意过这个问题,那个喂老鼠的有意思,玩了会,呵呵!
哪是一个宠物插件。
我觉得文章id不连续问题不大,现在我用EM博客程序,虽然id是连续的,但储存在草稿里的文章有多篇时,我发布文章不会安顺序发布的。
嗯,其实不用太去在意,EM博客程序博文里的文章好像和草稿是分表存储的。
还真没注意过这个。
不错啊,我感觉卢松松的zblog模板还是蛮好的,我用的就是,排名不错的。
嗯,卢松松的模板用的人不少。
我的ID都到了6143,文章才100来篇,烦人啊
那垃圾的ID就有点太多了。
有个老插件一直起作用的。。。
连续的感觉不太好,特别容易被抓取。
嗯,其实连续不连续都无关紧要的。
呵呵,我的WP只要能用就可以了,其他的就不去管它了
嗯,这个只是显得规范一点而已,实质没多大用处。
过来学习一下
欢迎来访,已回访。
这个我一般都不怎么在意!
嗯,其实这个是无关紧要的。
这是针对哪个版本的呢?最新的能行吗?
3.0以后的版本应该都可以用这个方法的。
我看你的还是3.5.2,我刚刚升级了3.6
这是针对哪个版本的呢?
多谢哥们去我网站光顾 刚开张,去的人少 呵呵
id的问题我也发现了 不过也没必要去关心,并且有固定链接掩饰着呢 看不出个什么 对了 一直不知道怎么在文章中插入代码形式
是不是用 code 标记?
如果不是太在意,连不连续也是无关紧要的,在文章中插入代码使用的是 CodeColorer 插件。
我也看到这个问题了,好像标签等之类的也占用编号
标签是不占用ID的,上传的附件占用ID。