前言
以前用 WordPress 我一直在纳闷写文章时,Wordpress 文章 ID 不连续,而且不规律,一直找不到原因,因此也放弃使用 WordPress,好悲剧的 WordPress。去年打算用 WordPress 建网站,于是重新开始研究 WordPress 的主题设计,当然还有 WordPress 相关技巧。在网上搜索了好久,终于发现几篇WordPress文章 ID 连续的方法,经过多方调测,终于相对完美的解决 WordPress 文章 ID 连续问题,同时让 WordPress 文章 ID 重新排列。在用以下方法前,先备份好网站文件和数据库文件,以免操作不当造成损失。
教程
打开 wp-config.php 文件,在最后添加代码
define(‘WP_POST_REVISIONS’, false);
define(‘AUTOSAVE_INTERVAL’, false);
打开 wp-admin 下 post-new.php 和 post.php 搜索 wp_enqueue_script 这两个文件将其
wp_enqueue_script( 'autosave' );
删除或者注释,建议注释
// wp_enqueue_script( 'autosave' );
打开 wp-admin\includes\post.php 文件,搜索到 if ( $create_in_db ),在它的前一行添加$create_in_db = false;
$create_in_db = false;
if ( $create_in_db )
通过这三步,就可以让 WordPress 文章 ID 连续,这种方法貌似很完美,其实还有一个问题,就是你在添加新文章的时候,如果有自定义栏目,字段内容将保存不了,还会在 postmeta 表中插入一条无效数据,只有你重新编辑才能保存。
如果以前 WordPress 发表过文章造成 ID 不连续,我想让 ID 连续有什么办法,当然有咯。
让 WordPress 文章 ID 重新排列
方法一:
在执行 SQL:
ALTER TABLE wp_posts DROP ID;
OPTIMIZE TABLE wp_posts;
ALTER TABLE wp_posts ADD ID BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;
进入 phpmyadmin 选择 wp_posts 数据表,点击操作 AUTO_INCREMENT 的值为 n+1,其中 n 为 wp_posts 中最大 ID 数
BUG:这种方法会造成文章没有关键字,评论不会对应原来的文章,对应的是原来的 ID
方法二:
导出 WordPress 所有文章,清空数据表
wp_posts 、wp_postmeta、wp_terms 、 wp_term_taxonomy、 wp_term_relationships
再导入 WordPress 文章,BUG 好像没有,不过新的文章前面 ID 是草稿到发布的文章,然后草稿和发布的文章按时间先后排列。
总结
以上方法都不是很完美,建议不改动帖子 ID 为好!
>> 所有文章均基于分享的原则,所有言论均个人观点,请注意全部都不是推荐,是分享!分享!分享!
暂无评论内容