如何处理WordPress的日志修改记录

前端之家收集整理的这篇文章主要介绍了如何处理WordPress的日志修改记录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

wordpress自动保存你对日志的修改记录。 当你更新了某篇日志或页面后,wordpress会保留你更新前的日志(页面),让你可以在任何时候取回更新前的内容。 这些老旧的日志存根将作为历史记录,永远保留在数据库中,使用户能够看到对日志的所有改动。

但有时候我们也需要对数据库进行一些整理。 每次对日志的修订都会使wordpress日志表中多出一行内容,而postMeta和term_relationships表中则可能会多出若干个条目。 删除一些不必要的记录可以释放硬盘空间,同时减轻MysqL的加载负担。

删除之前的日志记录

首先要记住: 备份好你的数据库 下面的方法会直接在MysqL表上运行sql语句,稍有偏差就会让你的wordpress无法运行,因此备份是必要的。

首先,找到在wp-config.php中规定的wordpress表前缀:

$table_prefix = 'wp_';

Wp_是默认表前缀,但你可以更改默认值,减少安全漏洞。 这里我们仍然将wp_作为默认的表前缀。

为了删除所有日志和页面修改记录,请先打开一个MysqL管理工具(如PHPMyAdmin)并运行以下语句:

DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postMeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision';

(如果你更改了表前缀,请对代码中的“wp_”也做相应更改。)

如果觉得这比较麻烦,你也可以选择删除某一特定日期前的所有日志修改记录,例如下面的语句将删除2010年1月1日前的所有日志修改

DELETE a,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postMeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision' AND a.post_date < '2010-01-01';

(注意,MysqL的日期格式为年-月-日)

禁用或限制日志修改记录

wordpresswp-config.php文件添加以下代码,永久性关闭保留日志修改记录的功能

define('WP_POST_REVISIONS',false);

可以将值设为“true”以便重新激活保留修改记录的功能

或者你也可以用一个正整数来限制所允许的日志修改记录的数量

define('WP_POST_REVISIONS',5);

上面的代码会为每篇日志保留至多5次修改记录,加上一次自动保存记录。 五次前的修改记录会被自动删除

功能相同的wordpress插件

如果涉及到MysqL会让你觉得不安,那么你可以试试这些具有类似功能wordpress插件

原文:How to Control Post Revisions in wordpress

猜你在找的wordpress相关文章