WordPress で特定の投稿タイプの記事を全削除するSQL

怖いSQLですw

WordPressサイトで特定の「投稿タイプ」を全削除したいときにこれ流せばいいというSQLです。

※このSQLで削除した投稿はデータベース上からなくなってしまうので復活できません。ご注意ください。

ちまちま〜でも WordPress 管理画面から特定の投稿タイプの一覧を出して数ページまとめてゴミ箱に入れて→「ゴミ箱を空にする」の処理のほうが精神衛生上おすすめです。

レンタルサーバーのデータベース操作やphpMyAdmin、Adminer 等でこのSQLを流すことを想定しています。

DELETE p, pm
  FROM wp_posts p
 INNER
  JOIN wp_postmeta pm
    ON pm.post_id = p.ID
 WHERE p.post_type= 'tokutei-post-type';

この場合「tokutei-post-type」という投稿タイプがデータベース上から消失します。

wp_posts 、 wp_postmeta の prefix(wp_)は適宜変更してください。

同じデータベースに prefix 違いで2つWordPressサイトを構築している場合など、気が付かないうちに他方のWordPressのデータがなくなってしまう恐れもありますので、厳重に注意してください。

このSQLを流す前にはバックアップを取ることをおすすめします。

…できればこのSQLを流すことのない運用を心がけましょう。

この記事が気に入ったら
いいね ! しよう

Twitter で