WordPressでごみ箱の保存期間を変更したり、自動削除を停止する方法

WordPressでごみ箱の保存期間を変更したり、自動削除を停止する方法

WordPressで投稿を削除する場合、デフォルトの動作としては、投稿がいったんごみ箱に移動されて一定期間の後に自動削除されます。

この設定は変更することができ、次のようなカスタマイズが可能です。

  • ごみ箱内での保存期間を変更する
  • ごみ箱内の自動削除を停止する

そこでここでは、WordPressのごみ箱機能の動作をカスタマイズする方法を紹介します。

この記事は、以下の環境で実行した結果を基にしています。他のバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェア(プラグイン)バージョン
WordPress5.3.2

ごみ箱内での保存期間を変更する

ごみ箱に移動された投稿は、デフォルトで30日間は保存されるようになっていますが「wp-config.php」に次の内容を追記することで、任意の日数に変更することができます。

Memo

追記場所は「編集が必要なのはここまでです ! WordPress でブログをお楽しみください。」行の上がおススメです。

define('EMPTY_TRASH_DAYS', 7);
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

たとえば、上の設定では、ごみ箱内の投稿は7日間保存されるようになります。

また、保存期間を「0」に設定すれば、ごみ箱を経由せずにすぐに完全削除することもできます。

define('EMPTY_TRASH_DAYS', 0);
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

なお、保存期間を「0」に設定をすると、投稿の編集画面などで「ごみ箱に移動」が「完全に削除する」に変更されます。

WordPressでごみ箱の保存期間を変更したり、自動削除を停止する方法

デフォルトの画面

WordPressでごみ箱の保存期間を変更したり、自動削除を停止する方法

保存期間を「0」に設定したときの画面

ごみ箱内の自動削除を停止する

ごみ箱に移動した投稿は、デフォルトで30日経過後に自動削除されますが「functions.php」に次の内容を追記することで、意図的に削除しない限り自動削除されないようにすることができます。

// ゴミ箱の自動削除を停止
function disable_scheduled_delete() { 
 remove_action( 'wp_scheduled_delete', 'wp_scheduled_delete' ); 
} 
add_action( 'init', 'disable_scheduled_delete' );

上の設定で、ごみ箱内の投稿は、意図的に削除しない限り残り続けます。

あとがき

ごみ箱内の記事が一定期間後(30日)に自動削除される仕様は、意外と知らない方もいるのではないでしょうか。

いつかリライトしようと投稿をごみ箱に保存していたら、いつの間にか削除されていました、なんてことにならないようにしましょうね。