サイトで作成された投稿リビジョンをクリーンアップする必要がある場合があります。これは、WP-CLIですでに使用可能なコマンドを使用して可能です。
WP-CLIには、ポストリビジョンを削除するために使用できるwppostdeleteコマンドがあります。ポストリビジョンは、サイトのコンテンツに加えられた変更であり、時間の経過とともに、サイトのポストリビジョンが増加する可能性があります。次の手順は、LiquidWebのマネージドWordPressまたはマネージドWooCommerce製品のいずれかを使用していることを前提としています。これらの手法は他のWordPressインストールでも使用できますが、必ずプライマリWordPressインストールフォルダーからコマンドを実行してください。
コマンドを実行するための準備
最初のステップの1つは、サイトマネージャーからsFTP/SSHクレデンシャルを生成することです。 Macではターミナルを使用でき、PCではPuttyを使用してWP-CLIを使用できます。 SSHを使用したサーバーへのログインの詳細については、「Secure Shell(SSH)を介したサーバーへのログイン」を参照してください。
ログインしてから、次のように入力してWordPressインストールフォルダーに移動します。
cd html
ポストリビジョンの一括削除など、サイトに大幅な変更を加える前に、データベースのバックアップを作成することをお勧めします。手動バックアップを作成するには、次のコマンドを実行します。
wp db export
これで、gzipを使用して、結果のsqlファイルを圧縮できます。これは、サーバーに保存されている小さなファイルを意味します。
gzip sitebackup.sql
投稿のリビジョンのクリーンアップ
すべてのリビジョンの投稿を削除するには(一時的にゴミ箱に移動します)、次のWP-CLIコマンドを使用します:
wp post delete $(wp post list --post_type='revision' --format=ids)
ゴミ箱に移動された投稿リビジョン(これには、投稿ステータスがゴミ箱になっているすべての投稿リビジョンが含まれます)を削除するには、次のコマンドを実行します。
wp post delete $(wp post list --post_type='revision' --format=ids --force)
2番目のコマンドを実行するだけで、投稿をゴミ箱に移動する最初のステップをスキップできます。これにより、ゴミ箱にあるものとサイトのアクティブな部分にあるものの両方のすべての投稿リビジョンが削除されます。
改訂後の削除をより細かく制御
ポストリビジョンの削除をさらに制御する必要がある場合は、WP-CLI用にサードパーティからインストールできるパッケージがあります。注意:このパッケージはLiquid Webによって提供されておらず、LiquidWebによって承認されていません。ご自身の判断でご使用ください。
WP-CLIのパッケージをインストールするには、次のコマンドを実行します。
wp package install trepmal/wp-revisions-cli
パッケージWPリビジョンがインストールされた後、すべてのポストリビジョンをクリーンアップするには、次のコマンドを使用できます。注意:このコマンドは、投稿のリビジョンを削除する前にクエリを実行するため、時間がかかる場合があります。
wp revisions clean -1
特定の日付より前のすべての投稿リビジョンを削除する場合は、それをコマンドに含めることができます。例:
wp revisions clean --before-date=2019-06-10
特定の投稿タイプ以外のすべての投稿リビジョンをクリーンアップする必要がある場合は、コマンドの最後にその投稿タイプを含めます。たとえば、次のコマンドを実行しても、WooCommerceで作成された製品投稿タイプのリビジョンは削除されません。
wp revisions clean --post_type=product
すべての投稿リビジョンをより速く削除するには、次のコマンドを実行できます:
wp revisions dump --hard
既存のすべての投稿リビジョンを一覧表示するには、次のコマンドを実行できます:
wp revisions list
サイトデータベースからポストリビジョンを簡単に削除すると、データベースをクリーンアップした状態に保つのに役立ちます。データベースを合理化すると、特にデータベースのサイズが大きくなるにつれて、パフォーマンスが向上する可能性があります。