WORDPRESSにたまる revision をプラグインを使わずにSQLで削除

あやふやな知識で、 revision 削除中にやってしまいましたよ。

WORDPRESSのコンテンツを作成していると、プレビューを見るたびにリビジョンがどんどんたまるので、プラグインで削除をしたりしていたんですが、調子ぶっこいてSQLのほうでも、色々ググリながら探して、これだな。と思うものをIMEの辞書ツールに入れてサクサク使っていたんです。

消えたんです・・・消えてほしくないものも

DELETE FROM wp_posts WHERE post_status = ‘inherit’ ;

このコマンド?をずっと使っていて、特に支障は無かったんですけど、
最近作った新しいWORDPRESSサイトで、アイキャッチ画像をポストごとに設定していたんです。
リビジョンたまってきたんで
DELETE FROM wp_posts WHERE post_status = ‘inherit’ ;
を入れて削除!

アイキャッチとのつながりが消えた

何個消しましたって言うメッセージを見て
・・・なんかすごい数だったな・・・たまってたなとは思ったんです。
サイトを見てみると、アイキャッチ画像が消えてる!!!
WORDPRESSダッシュボードのメディアから画像が全部なくなってる(T-T
”inherit”ですよね。絶対

WORDPRESSのUPLOAD画像のところを見ると、画像自体は残っているんです。
アイキャッチとのつながり(継承:inherit!?)が、どういうわけか切れたみたいで
私には手に追えないので、また一個一個設定しなおしました・・・目がつかれた
まだそんなに投稿していなかったのでよかった。

それで、これはいかんと思って、mysqlのテーブルの中を確認してみると、
なるほど、post_status のinheritのところは消したらいけないなと。画像とかあるし・・・
消したいのは revision だけなので、

revision だけを消したい

表をよく見るとリビジョン( revision )があるところはpost_statusではなく
post_typeではないか。
知識は無いんですが、なんとなく想像で ヤメテw
こういう文に変更してみた
x DELETE FROM wp_posts WHERE post_status = ‘inherit‘ ;
o DELETE FROM wp_posts WHERE post_type = ‘revision‘ ;

今のところは( revision )だけが消えていると思います。思いますw
また新たなことが発生しない限りはこれでいけそうです。
このあやふやな感じから脱したい(笑)
こういうの読めばいいんですかね
詳細! PHP 7+MySQL 入門ノート