腾讯云服务器优惠活动华纳云香港服务器

WordPress站点如何禁止自动生成_edit_lock和_edit_last数据?

WordPress主题推荐

默认情况下,WordPress站点每发布一篇文章,就会自动生成_edit_lock和_edit_last字段,并插入到wp_postmeta表中;每次更新文章也会同时更新这两个字段值。

前面boke112百科已经跟大家分享了如何通过SQL语句批量删除_edit_lock和_edit_last数据,以及如何设置定时计划任务批量删除,详见以下教程:

虽然我们可以进入数据库删除_edit_lock和_edit_last数据,但是这也会导致wp_postmeta表的meta_id越来越大,能不能禁止WordPress自动生成_edit_lock和_edit_last数据呢?毕竟只有站长一个人使用,不存在多人同时编辑的情况。

WordPress站点如何禁止自动生成_edit_lock和_edit_last数据?-第4张-boke112百科(boke112.com)

经过boke112百科的一番折腾,还是没有一劳永逸的解决办法,只能手动修改核心文件了,即是修改/wp-admin/includes/post.php文件和ajax-actions.php文件,找到添加/更新_edit_lock和_edit_last数据的代码,并将其注释掉或删除掉即可。

1、修改post.php文件

比如WordPress 6.4.3版本,打开/wp-admin/includes/post.php文件,

找到451行代码,并在它前面添加//

//update_post_meta( $post_id, '_edit_last', get_current_user_id() );

找到691行代码,并在它前面添加//

//update_post_meta( $post_id, '_edit_last', get_current_user_id() );

找到948行代码,并在它前面添加//

//add_post_meta( $post_id, '_edit_last', $GLOBALS['current_user']->ID );

找到1747行代码,并在它前面添加//

//update_post_meta( $post->ID, '_edit_lock', $lock );

WordPress站点如何禁止自动生成_edit_lock和_edit_last数据?-第5张-boke112百科(boke112.com)

2、修改ajax-actions.php文件

比如WordPress 6.4.3版本,打开/wp-admin/includes/ajax-actions.php文件,

找到2937行代码,并在它前面添加//

//update_post_meta( $post_id, '_edit_lock', $new_lock, implode( ':', $active_lock ) );

注释掉以上5行代码后,以后不管是新建文章还是编辑文章,或者是批量编辑文章,都不会再自动生成_edit_lock和_edit_last数据了。

注意:如果你的WordPress网站是多用户的,不建议禁止,毕竟这两个_edit_lock和_edit_last数据还是很有用的,可以防止一篇文章被多人同时编辑,导致数据丢失。

不过这样做法有一个缺点,那就是WordPress升级后又要手动修改一次,虽然修改起来很简单,但是每次升级都要修改确实挺麻烦的,期待大神能够找到一劳永逸的方法。

本文地址:https://boke112.com/post/12132.html

赞 (5) 打赏
版权声明:本文为原创文章,版权归 boke112百科 所有,欢迎分享本文,转载请保留出处!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请联系我们,确认后马上更正或删除,谢谢!
wu