Auto Unpublish Posts
EmDash の投稿を指定日に非公開化、ゴミ箱への移動、またはタグ付け替えできます。コレクションごとの既定設定、メール通知、実行ログに対応し、Pro ではルールと一括処理が加わります。
プラグイン
Auto Unpublish Posts
EmDash の投稿を指定日に非公開化、ゴミ箱への移動、またはタグ付け替えできます。コレクションごとの既定設定、メール通知、実行ログに対応し、Pro ではルールと一括処理が加わります。
説明
任意のコレクションの任意のエントリーに対して、将来の変更を予約できます。非公開にする、ゴミ箱に移す、またはタームを変更する、といった操作です。WordPress ユーザーにとっては「投稿の有効期限」に当たる機能です。
無料版
- エディターのサイドバーパネルを全コレクションに追加。変更の予約、確認、キャンセル、実行と、直近の実行履歴を扱えます。
- アクション: 非公開化(保留中の公開予約があれば先にキャンセルされます)、ゴミ箱への移動、ターム(分類語)の追加・削除・置換。
- 予約済みの変更ページに、これから実行される変更と直近 50 件の実行結果を表示。
- コレクションの既定設定。たとえば「初回公開の 30 日後に非公開にする」など。
- サイトのメールプロバイダー経由のメール通知。送信先は投稿者、管理者、その他のアドレスです。
- 削除予定のページには、検索エンジン向けに
robots: unavailable_afterを出力します。 - ダッシュボードウィジェットとサイトのタイムゾーン設定。
- MCP 経由の AI エージェントツール:変更の一覧表示・予約・キャンセル、コレクション既定設定の変更。
Pro 版
同じパッケージで、設定に年間ライセンスキーを貼り付けるとロック解除されます。キーはオフラインで検証され、ドメインに紐づけられます。
- ルール: 公開時、保存時、エントリーに保存された日付、または毎日・毎週・毎月に実行。条件は最大 3 つ(ターム、ステータス、フィールド値、経過期間、投稿者)、ステップは最大 3 つまで。各ステップには任意の条件と、if/else 用の「それ以外」を設定できます。
- 追加のアクション: フィールドの設定、非公開化とリダイレクト(301、302、410)、ルールからのメール送信。
- 一括予約: コレクション、ステータス、ターム、経過期間で絞り込み、最大 2,000 件のエントリーを対象にできます。
- CSV のインポート(300 行)と、ログおよびスケジュールのエクスポート。
- ページ送りと結果フィルター付きの完全なログ。
- 追加のエージェントツール: 100 件単位の一括変更、実行ログ、ルール。
ライセンスが失効しても、既存の自動化が止まることはありません。Pro 機能の新規作成と編集がロックされるだけです。Pro は https://peachfinthemes.com/auto-unpublish-posts/ で購入できます。
信頼性
各変更は実行前に確保されるため、必ず一度だけ実行されます。すべての実行、スキップ、失敗は理由とともにログに記録されます。一時的な失敗は 5 分後と 10 分後に再試行されます。
インストール
要件
- プラグインのサンドボックスランナーを備えた EmDash 1.0 以降。Cloudflare では Workers Paid プランと Worker Loader バインディングが必要です。EmDash 1.2.0 で動作確認済みです。
- 実行通知やメールステップを使う場合は、EmDash に設定されたメールプロバイダー。なくても変更は実行されます。
インストール方法
- このページで Open in EmDash を選んでサイトのアドレスを入力するか、EmDash 管理画面のプラグインレジストリで Auto Unpublish Posts を探します。
- 要求される権限を確認して承認します。
最初の手順
- プラグインの設定ページ(管理者向け)を開きます。サイトのタイムゾーンを設定し、実行メールの送信先を選び、自分宛にテストメールを送ります。
- 保存済みの任意のエントリーを開きます。サイドバーの予約済みの変更パネルで、アクション、日付、時刻を選び、確定して予約します。
- 任意:既定設定で、コレクションのエントリーが公開されたときに自動で変更を予約するよう設定します。
- 予約済みの変更ページで、これから実行される変更と実行ログを確認します。
Pro 版
- https://peachfinthemes.com/auto-unpublish-posts/ でライセンスを購入します。プラグイン設定ページの Get Pro リンクも同じ場所に移動します。
- 決済後、注文ページまたは My account → EmDash licenses でサイトのドメインを入力して、キーを取得します。
- キーを 設定 → Auto Unpublish Posts Pro に貼り付けて保存します。
キーは、発行されたドメインとそのサブドメインで有効です。開発用に localhost、*.localhost、*.test は常に使えます。
AI エージェント
ツールは EmDash 自身の MCP サーバーが /_emdash/api/mcp で提供します。スクリプトからは、管理者スコープを持つ EmDash API トークンで同じルートを呼び出せます。たとえば POST /_emdash/api/plugins/auto-unpublish-posts/mcp-list です。各ツールは、管理画面と同様にトークンユーザーのロールを確認します。
よくある質問
プラグインはネットワークリクエストを行いますか?
いいえ。許可するホストを宣言しておらず、ライセンスキーもオフラインで検証します。メールはサイトの EmDash メールプロバイダー経由で送信されます。
変更は正確にいつ実行されますか?
各変更は、設定した時刻に期限を迎える EmDash のスケジュールタスクです。1 時間ごとの巡回処理が、タスクが失われた期限超過の変更を再設定します。
変更が失敗したらどうなりますか?
一時的な失敗は 5 分後と 10 分後に再試行されます。3 回目の試行も失敗すると失敗として記録され、理由がログに残り、通知がオンならメールも送信されます。再試行では解決できないエラーは、すぐに失敗扱いになります。エントリーが先に削除されていた場合、変更はスキップされ、ログに理由が記録されます。
誰が予約・キャンセルできますか?
投稿者は自分のエントリーと、自分が予約した変更を扱えます。編集者は任意のエントリーと一括予約を扱えます。管理者はさらに、設定、既定設定、ルール、ライセンス、リダイレクトも管理できます。サーバーは毎回のリクエストでこれを確認します。
「フィールドを設定」は、他の未公開の編集も公開してしまいますか?
いいえ。エントリーに他の未公開の編集がある場合、新しい値は下書きに保持され、ログにもその旨が記録されます。
予約したリダイレクトは、自分で作成したリダイレクトを置き換えますか?
いいえ。プラグインが変更するのは自身が作成したリダイレクトのみです。そのアドレスに別のリダイレクトが存在する場合、変更は失敗します。
Pro はどこで購入できますか?
Peachfin Themes のストアで購入できます: https://peachfinthemes.com/auto-unpublish-posts/。年間ライセンスは、1 サイト $49、5 サイト $99、サイト数無制限 $149 です。決済後、注文ページまたは My account → EmDash licenses でドメインを入力してキーを取得します。
ライセンスが失効するとどうなりますか?
既存のルール、既定設定、予約済みの変更は引き続き動作します。ロックされるのは Pro 機能の新規作成と編集だけです。My account → EmDash licenses で更新すると、同じライセンスがさらに 1 年延長され、新しいキーが発行されます。
履歴はどのくらい保存されますか?
ログは 180 日間保存されます。完了した変更は 90 日後に削除されます。
ルールが自分自身を起動することはありますか?
ありません。プラグイン自身による公開は、プラグインのルールや既定設定を起動しません。
セキュリティ
問題の報告
セキュリティ上の問題は [email protected] まで非公開で報告してください。先に公開 issue を作成しないでください。
権限
- コンテンツの書き込みと公開: 非公開化、ゴミ箱への移動、フィールドの設定、保留中の公開予約のキャンセル。
- タクソノミーの書き込み: タームの追加、削除、置換。
- リダイレクトの書き込み: Pro の「非公開化とリダイレクト」アクション。プラグインが作成したリダイレクトのみを変更します。
- メール送信: 実行通知、テストメール、メールステップ。
- ユーザーの読み取り: 投稿者と管理者のメールアドレスの取得、およびルールの投稿者条件の照合。
- スキーマの読み取り: フォーム用にコレクションとフィールドを一覧表示。
プラグインは許可するホストを宣言していないため、ネットワークリクエストは行えません。
アクセス制御
管理ページ、エディターパネル、エージェントツールは、いずれもサーバー側で呼び出し元の EmDash ロールを確認します。投稿者は自分のエントリーのみ操作できます。編集者は任意のエントリーを操作できます。設定、既定設定、ルール、ライセンス、リダイレクトを変更できるのは管理者だけです。エージェントツールはメールを送信できません。
公開ルート
公開されているルートは export(CSV ダウンロード)の 1 つだけです。リンクをたどるダウンロードでは EmDash の管理用リクエストヘッダーを付けられないため、各リンクはプラグインの設定に保存されたランダムキーを使って HMAC-SHA-256 で署名されます。リンクの有効期限は 10 分です。ダウンロードには有効な Pro ライセンスも必要です。
保存されるデータ
プラグインは、サイト上の自身のストレージにデータを保存します。予約済みの変更、実行ログ、設定、既定設定、ルール、ライセンスキーです。記録には、エントリーの ID とタイトル、および変更を予約した人の ID と名前が含まれます。ログは 180 日間、完了した変更は 90 日間保存されます。設定したメール以外は、どこにも送信されません。
ライセンスキー
キーは Peachfin Themes のストアが発行し、Ed25519 で署名され、オフラインで検証されます。プラグインがストアに接続することはありません。キーには注文 ID、対象ドメイン、有効期限が含まれ、個人データは含まれません。
変更履歴
1.0.1
- EmDash 1.2.0 で動作確認しました。
- EmDash がまだサイトのアドレスを提供していない場合(新しいサイトで再起動前に起こり得ます)の Pro ライセンス認証を修正しました。プラグインは、キーを入力した管理ページのアドレスでキーを検証するようになりました。
- Pro では、サイトのアドレスが取得できない場合でも「予約済みの変更」が読み込まれるようになりました。CSV ダウンロードリンクには管理ページのアドレスを使用します。
- サイトのアドレスが取得できない場合、「非公開化とリダイレクト」はページを公開状態のまま維持して再試行し、サイトの再起動が必要であることをログに記録するようになりました。
1.0.0 — 初回リリース
無料版:
- 全コレクションのエディターサイドバーパネル:変更の予約、確認、キャンセル、実行、直近の実行履歴。
- アクション:非公開化(保留中の公開予約を先にキャンセル)、ゴミ箱への移動、タームの追加・削除・置換。
- 今後の変更と直近 50 件の実行結果を表示する予約済みの変更ページ。
- コレクションの既定設定。たとえば「公開の 30 日後に非公開にする」。
- サイトのメールプロバイダー経由のメール通知と、テストメール送信ボタン。
- 非公開化またはゴミ箱への移動が予約されているページ向けの
robotsunavailable_afterタグ。 - ダッシュボードウィジェット。
- サイトのタイムゾーン設定。日付は UTC で保存され、夏時間に対応します。
- AI エージェントツール:
list_scheduled_changes、schedule_change、cancel_scheduled_change、set_collection_default。
Pro 版(年間ライセンスキー、オフライン検証):
- トリガー付きのルール。条件は最大 3 つ、条件付きステップは最大 3 つ。
- フィールドの設定、非公開化とリダイレクト、メールステップ。
- 最大 2,000 件のエントリーの一括予約。
- CSV インポート(300 行)と、ログおよびスケジュールの CSV エクスポート。
- ページ送りと結果フィルター付きの完全なログ。
- エージェントツール:
schedule_changes、get_run_log、list_rules、update_rule。 - Pro が有効でないサイトでは、設定、ルール、一括処理、エディターパネルから Pro のページへのリンクが表示されます。