#【WordPress】記事の自動保存、リビジョン機能を止めて、ついでに古いリビジョンを削除
Wordpressのパフォーマンス向上。上記を実現するのに便利なプラグインが出ているが、Wordpress内部で実際どのような設定を持っているのか調べるため、手動で行うことにした。
ちなみに、便利なプラグインは以下。
Revision Control
・自動保存機能をオフにする。
テーマのfunction.phpに、以下を記述
<?php
〜〜省略〜〜
function autosave_off() {
wp_deregister_script('autosave');
}
add_action( 'wp_print_scripts', 'autosave_off' );
これで自動保存機能がオフになります。
勝手に保存処理が動くことも無くなるので記事入力中動作が軽くなるかと思います。
・リビジョンをオフにする。
wp-config.phpの、
require_once(ABSPATH . 'wp-settings.php');
の前に以下を記述。
後に記述するとエラーが起きます!
define('WP_POST_REVISIONS', false );
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
これでリビジョン機能がオフになります。
・DBに溜まった不要なリビジョンを削除する。
まず、何か起きても大丈夫なようにDBのバックアップを取っておく。
リビジョンデータは直接SQLを叩いてdeleteします。
プラグインを使ってMySqlに接続してもいいですし、コンソールからMySqlに接続してもOK。
SQLはこんな感じ。
DELETE FROM wp_posts WHERE post_status = 'inherit' AND post_type = 'revision';
これで溜まっていたリビジョンが消えてDBも軽くなったはずです。