Craft CMS のエントリをコマンドで一括非公開にする方法

Craft CMS の CLI コマンドを使って、特定セクションのエントリをまとめて非公開(disabled)にする方法を解説します。

Craft CMS Logo

Craft CMS の CLI ツール craft コマンドを使えば、特定のセクションのエントリを一括で「非公開(disabled)」に変更することができます。この記事では、book セクションを例にして、すべてのエントリを非公開にするコマンドの実行方法をわかりやすく解説します。

エントリを一括で非公開にするには?

Craft CMS では「公開/非公開」の状態は enabled フィールドで管理されていますので、以下のコマンドで一発で非公開にできます。

ph craft resave/entries --section book --set enabled --to :empty:
オプション内容
--section book対象とするセクション(ここでは book)を指定します
--set enabledenabled フィールド(公開/非公開のステータス)を対象に
--to :empty:値を空にする → 非公開(disabled)になります

:empty: は特殊な記法で、値を「空にする」ことを意味します。Craft の内部で「空の enabled = 非公開」として扱われます。

公開に戻すには?

:empty:"=1" に変えるだけで、すべて「公開」に変更されます。

ph craft resave/entries --section book --set enabled --to "=1"

注意点

  • 本番環境で実行する前に、必ずバックアップを取りましょう。
  • --dry-run のようなシミュレーションオプションは存在しません。実行すると即反映されます。
  • 処理件数が多いと時間がかかります。

まとめ

CLI からの一括操作は、Craft CMS での大量エントリ管理にとても役立ちます。特に「一括非公開」のような作業は、管理画面からポチポチするよりも圧倒的に楽になります。

たった1行で全エントリを非公開に。覚えておいて損はありません!

Published 2025-05-30
Updated 2025-05-30

⚡️ 話題の一冊 ⚡️