【CraftCMS】投稿データのhard delete


投稿データを削除した後に「破棄済み」を選択するとまだ残ってた。

どうやら論理削除しかしてくれないようなのでこのままだとアレな感じ。
どうやったら消せるのか調べた。

CRAFT_PATH/config/general.phpに以下を追記する。

general.php

'softDeleteDuration'  => 0 // デフォルト値は2592000らしいので30日間?

まぁ0だと間違った時あーっ!となってしまうので864000(10日間とか)くらいでよいのかなと。
0だとSoftDeleteDurationは停止してしまうようでした。

破棄してから設定値の時間経過後にgcが実行されるのはランダムなのだが
その確率を設定する項目をapp.phpで定義

app.php
return [
    'components' => [
        'gc' => [
            'probability' => 10000, // 1 in 100
        ],
    ],
];

100アクセスに1回gcが走る・・・と思う。。。

速攻でハードデリートしたい場合は以下のコマンド

./craft gc --delete-all-trashed

ちゃんと用意されてんだなぁ

おわり