WordPressで大量の記事を一気に消したい事がたまにあります。
例えばテスト環境で、今あるCSVデータを反映して表示部分を調整したい、でも元データはクライアントがアップデートしているので、随時テスト環境はクリアにして最新データを反映したい、等です。
そんな時に便利なプラグインを紹介します。
大量の記事データを一気に削除する
方法その1「ページごとに表示する項目数」を増やして、一気に削除
結論。大量の場合はお勧めしません。
数年前、大量の記事を「一括操作」で編集しようとして、何の気なしに「ページごとに表示する項目数」を500(多分上限は999だったと思います)にしたところ、ブラウザが全く反応しなくなりました。
WordPressを扱う人間の大半が経験する「5分前まではあんなに普通の日常だったのに」というやつです。
そのときの対処方法は「ページごとに表示する項目数」を増やし過ぎてブラウザが固まった時はに書いています。
簡単に説明すると、管理画面のすべてが固まったと思いきや「記事の検索」だけは動作していたので、そこで意図的に数件しかヒットしない単語(等サイトでは「犬」等)を入れ、検索結果画面に移動。
そこでおもむろに表示オプションの「ページごとに表示する項目数」を減らす(そのときはもう500で固まったことが恐ろしくて、デフォルトの「20」も怖く、「6」としました。)です。
※現在はまた油断して「100」くらいにしている投稿タイプもあります。
一応説明します。
投稿一覧の上部、「表示オプション」をクリックします。
「ページ毎に表示する項目数」を増やします。
消したい記事の数だけ増やしたいところですが、ブラウザが固まる恐れがあるので100〜200くらいが妥当だと思います。
全選択をしてから
一括編集→ゴミ箱へ移動、をクリックします。
※「全選択」はあくまで「そのページに表示されている記事を全選択」なので、1000を超える場合でも1ページの表示数は200程度に抑え、ページ遷移して地道に消しましょう。私のように「ページごとに表示する項目数」を増やすと痛い思いをします。
方法その2「プラグインを使う」
これがベストだと思います。解説します。
WP Bulk Deleteで大量の記事を一発で全削除
WP Bulk Deleteのインストール
プラグイン→新規追加からWP Bulk Deleteを検索してインストールします。
※またはこちらからダウンロードしてインストール。
WP Bulk Deleteの使い方
プラグインを有効化すると、管理画面サイドバーに「WP Bulk Delete」が表示されるのでクリックします。
最初のタブは「Clean up」で、リビジョンやゴミ箱を消去してくれます。今回は記事を削除したいので、隣の「By Posttype」をクリックします。
全削除したい投稿タイプを選択します。
「Delete Posts」をクリックして完了です。
その他
SQL(WordPressの国内環境の場合はほぼMySQL)でコントロールするのがベストだとは思います。
DELETE FROM wp_posts WHERE 〜のように指定したら1分もかからないじゃないか、という意見もあるでしょう。
ただし、
・私自身、過去25年に渡りSQL直接いじってやらかした経験は大量
・やっと慣れてきて、スタッフにお勧めしたところ、懐かしいくらい私のミスを踏襲
・SQLでぱぱっとできる人はこの記事を必要としない
ことから、SQL直接いじりは省きます。