MySQLでWordPressのリビジョンをまとめて削除する方法と、リビジョン数の上限を設定する方法

リビジョン消すプラグインはいろいろありますが、件数が溜まり過ぎているサイトとかだとPHPが処理落ちしてしまうこともまれによくあります。 そういう時はMySQLで直接消しちゃえばいいと思います。 MySQLでリビジョン操作 […]

広告ここから
広告ここまで

目次

    リビジョン消すプラグインはいろいろありますが、件数が溜まり過ぎているサイトとかだとPHPが処理落ちしてしまうこともまれによくあります。
    そういう時はMySQLで直接消しちゃえばいいと思います。

    MySQLでリビジョン操作

    リビジョンの件数を確認する

    mysql> select post_type,count(*) from wp_posts where post_type = 'revision' group by post_type;
    +-----------+----------+
    | post_type | count(*) |
    +-----------+----------+
    | revision  |       88 |
    +-----------+----------+
    1 row in set (0.00 sec)
    

    リビジョンを全部消す

    mysql> delete from wp_posts where post_type = 'revision';
    Query OK, 88 rows affected (0.01 sec)
    

    リビジョンが消えているかを確認する

    mysql> select post_type,count(*) from wp_posts where post_type = 'revision' group by post_type;
    Empty set (0.00 sec)
    

    リビジョン数の上限を設定する

    余談ですが、wp-config.phpに以下のコードを追記しておくと、1記事あたりのリビジョンが6件以上保存されなくなります。
    MySQLで消さないといけなくなった場合は、削除した後にこれを設定しておくと次困らないかもです。

    define( 'WP_POST_REVISIONS', 5 );
    
    広告ここから
    広告ここまで
    Home
    Search
    Bookmark