WordPressを軽くする、投稿一括削除コマンドの実践

WordPressを長く運営していると、知らず知らずのうちに「不要な投稿」が溜まっていきます。
古い下書きや、テスト投稿、さらにはスパムのような記事まで残っていて、管理画面がごちゃごちゃしてしまうことはありませんか?

私もある日「ゴミ箱に数百件の下書き」が残っているのを見つけてしまい、管理画面を開くたびにモヤモヤ…。
そんなときに活躍したのが wp-clipost delete コマンドでした。

ブラウザから一つずつ削除するのは現実的ではないですが、コマンド一発でスッキリ整理できるのは本当に気持ちいいです。

wp post delete の基本

wp-cli には投稿を削除するためのコマンドが用意されています。
シンプルなのは以下の形です。

wp post delete <ID>... [--force]
  • <ID> は削除する投稿ID(複数指定可能)
  • --force を付けるとゴミ箱を経由せずに完全削除

私は最初に試すときに「本当に削除されるのか…?」とちょっとドキドキしました。
でも対象を wp post list で確認してから実行すると安心です。

古い下書きをまとめて削除

長期運営していると「3年前の下書き」とか「タイトル未入力の下書き」が眠っていたりします。
そういう投稿は公開されることもないので、思い切って削除してしまいました。

例:30日より前に作られた下書きを削除

wp post delete $(wp post list --post_status=draft --date_query=before=30days --format=ids) --force

これを実行した瞬間、下書きのリストが一気に半分以下に。
「気分的にも軽くなった」というのが正直な感想です。

ゴミ箱に溜まった記事を完全削除

WordPressは削除するとまずゴミ箱に移動します。
ただ、何百件もゴミ箱にあると、それ自体が「削除しきれてない」気分になりますよね。

一気に空っぽにするならこちら。

wp post delete $(wp post list --post_status=trash --format=ids) --force

ゴミ箱ゼロ。これは本当にスッキリします。

カテゴリーやタグで削除する

「スパム記事っぽいものを特定のカテゴリーにまとめていた」なんてケースもあります。
そういうときはカテゴリーやタグで一括削除できます。

例:カテゴリーIDが123の投稿を削除

wp post delete $(wp post list --category=123 --format=ids) --force

例:タグが spam の投稿を削除

wp post delete $(wp post list --tag=spam --format=ids) --force

管理ポリシーとして「一度はゴミ箱に送って確認」してから完全削除するのが安全です。

実際に使ってみて思ったこと

手作業で削除するのは限界があるけれど、wp-cli を使うと一気に解決できます。
特に長く運営しているサイトや、複数人で管理しているサイトでは「ゴミ投稿の整理」が定期的に必要だと感じました。

実務では、定期的にこのコマンドを実行するように cronジョブに仕込んで自動化 しておくのもアリだと思います。
(ただし自動削除は取り返しがつかないので、バックアップを取るのが前提ですね)

まとめ

  • wp-cli の post delete は投稿整理にとても便利
  • 下書きやゴミ箱、スパム記事を一括削除できる
  • 実行前に対象を確認しておくと安心
  • 自動化も可能だが、バックアップは必須

WordPressの管理がちょっと重たいと感じたら、ぜひ一度この方法を試してみてください。
「不要な投稿がゼロになった管理画面」は、想像以上に快適です。


Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント