WordPress 3.4.2、3.5文章ID连续方法—禁用自动草稿、自动保存和文章修订
来源:互联网 发布:淘宝粉丝抢红包 编辑:程序博客网 时间:2024/05/22 00:23
每次升级WordPress都要重新修改内核文件,禁用其自动草稿Auto-Draft、自动保存Auto-Save和文章修订版本Post Revisions功能,使文章ID连续。
- WordPress3.4.2,方法如下:
1、打开 wp-config.php 文件,在 “$table_prefix = ‘wp_’;” 前面添加如下代码(注意,一定是“$table_prefix = ‘wp_’;”这行的前面):
12define(
'WP_POST_REVISIONS'
, false);
define(
'AUTOSAVE_INTERVAL'
, false);
2、找到并打开 wp-admin\post-new.php 和 wp-admin\post.php 这两个文件,将其 “wp_enqueue_script(‘autosave’);” 注释或删除掉。
1//wp_enqueue_script('autosave');
3、打开 wp-admin\includes\post.php 文件,找到 “if ( $create_in_db ) {” ,查找大约 419 至 424 行:
123456if
(
$create_in_db
) {
$post_id
= wp_insert_post(
array
(
'post_title'
=> __(
'Auto Draft'
),
'post_type'
=>
$post_type
,
'post_status'
=>
'auto-draft'
) );
$post
= get_post(
$post_id
);
if
( current_theme_supports(
'post-formats'
) && post_type_supports(
$post
->post_type,
'post-formats'
) && get_option(
'default_post_format'
) )
set_post_format(
$post
, get_option(
'default_post_format'
) );
}
else
{
修改成
123456if
(
$create_in_db
) {
global
$current_user
;
//获取当前登录管理用户
$post
=
$wpdb
->get_row(
"SELECT * FROM $wpdb->posts WHERE post_status = 'auto-draft' AND post_type = '$post_type' AND post_author = $current_user->ID ORDER BY ID ASC LIMIT 1"
);
//获取最早一条自动草稿
if
( !
$post
) {
$post_id
= wp_insert_post(
array
(
'post_title'
=> __(
'Auto Draft'
),
'post_type'
=>
$post_type
,
'post_status'
=>
'auto-draft'
) );
$post
= get_post(
$post_id
); }
if
( current_theme_supports(
'post-formats'
) && post_type_supports(
$post
->post_type,
'post-formats'
) && get_option(
'default_post_format'
) )
set_post_format(
$post
, get_option(
'default_post_format'
) );
}
else
{
说明:
此方法的作用是如果数据库已经有不可见的自动草稿日志,那么点击添加新文章时,将不会再自动产生新的不可见自动草稿,而是直接调用最早的一篇不可见草稿作为当前文章所需的数据库记录来使用,同时为避免ID不连续,删除了“删除早于7天的自动草稿”的代码语句。方法经本人亲测,针对WordPress 3.4.2有效。
- WordPress 3.5,方法如下:
1、与上面WordPess3.4.2一样;
2、找到并打开 wp-admin\post-new.php 和 wp-admin\post.php 这两个文件,将其 “wp_enqueue_script(‘autosave’);” 注释或删除掉。
1//wp_enqueue_script('autosave');
操作到这一步会出现:编辑文章出现“syntax error, unexpected”的问题。
试着比较一下代码,发现多了一行。
if
(
'attachment'
!==
$post_type
);
WordPress 3.4.2 post.php代码
WordPress 3.5 post.php代码
3、在 if ( ‘attachment’ !== $post_type ) 这行末尾添加如下一行代码,编辑文章就不会出现错误,(还有后台“编辑文章一直自动刷新无法发表”的问题也消失了,不知是不是之前的代码所导致的问题。)
1//wp_enqueue_script('autosave');
4、与上面WordPess3.4.2一样;
经过测试,自动保存默认保留一条自动保存文章,其他的修订版本什么的完全禁止了。用WP Cleaner查看如图:
- WordPress 3.4.2、3.5文章ID连续方法—禁用自动草稿、自动保存和文章修订
- wordpress4.4禁用自动保存草稿和去除文章修订的方法
- wordpress禁止文章修订和自动保存的方法(非插件,免修改源码)
- wordpress禁用自动保存(autosave)和版本修订(revision)
- 如何禁用/关闭最新版本WordPress的修订版本和自动保存功能
- WORDPRESS文章修订历史禁用和删除的办法
- 禁用WordPress自动保存
- WordPress 删除自动保存修订版和草稿插件 WP Cleaner
- 关掉或禁用wordpress的自动保存
- Jquery 自动保存草稿
- WordPress获取当前文章ID的方法
- WordPress中自动获取文章中的图片
- 让WordPress文章自动截断显示摘要
- wordpress文章ID不连续显示问题的完美解决
- Java JFileChooser 保存文章自动添加后缀名
- AJAX之自动保存草稿
- ajax+jsp草稿自动保存
- ajax 自动保存草稿[转]
- cadnece 封装建立
- HTTP协议详解(一)
- install jdk on ubuntu
- 聊聊如何检测素数
- vim 替换命令
- WordPress 3.4.2、3.5文章ID连续方法—禁用自动草稿、自动保存和文章修订
- HTTP协议 (二) 基本认证
- 黑马程序员---集合的介绍与使用(1)(List,linkedlist,Arraylist;Set,hashSet)
- 软件设计:勿以善小而不为,勿以恶小而为之
- JAVA的简单数据类型和复合数据类型
- 【欧拉计划2】Even Fibonacci numbers
- vim替换命令2
- MVC3 表达式树不能包含动态操作
- 黑马学习笔记——operator?: