エンタメ特化型、心を動かすWeb制作。
まずは無料で相談いたします!
ProcessWireは自由度が高い反面、設計を誤ると「運用が属人化する」「管理が分かりづらい」CMSになりがちです。
特に配信スケジュール管理は、初期設計で仕組み化しておくかどうかで、運用負荷が大きく変わります。
本記事では、ProcessWireを使った配信スケジュール管理を前提とした具体的な設計例を紹介します。
フルスタックサイト構築
記事・お知らせ・実績など「日時指定で公開したいコンテンツ」
予約配信・公開終了が必要
複数人での運用を想定
このようなケースを前提に設計します。
article(記事詳細)
articles(一覧・親ページ)
| 値 | 内容 |
|---|---|
| 0 | 下書き |
| 1 | 確認中 |
| 2 | 公開予定 |
| 3 | 公開中 |
| 4 | 公開終了 |
公開・非公開をPage Statusに依存しないのがポイントです。
publish_from(Datetime)
予約配信用
未入力の場合は「即時公開」扱いも可能
publish_until(Datetime)
キャンペーン・期間限定記事用
未入力なら無期限公開
publish_memo(Textarea)
修正指示
注意事項
社内メモ用(フロントには出さない)
フロント側での基本条件
$now = time();
$articles = $pages->find(" template=article, publish_status=3, publish_from<=$now, (publish_until=''|publish_until>=$now), sort=-publish_from");
ポイント
現在時刻を基準に判定
公開終了日が未入力でも表示できるようにする
ステータスが「公開中」のものだけ取得
人の操作を介さず「自動で切り替わる」設計にします。
表示カラムに以下を追加
publish_statuspublish_frompublish_untilこれだけで「今後の配信予定」が一目で分かります。
おすすめの運用ルール:
下書き/確認中
→ 表示されない
公開予定
→ 日時が来るまで非表示
公開中
→ 表示
公開終了
→ 強制的に非表示
ルールが明確だと、属人化を防げます。
publish_status:下書きを初期値に
publish_from:入力時点の日時を自動セット
これだけでも「設定忘れ」は激減します。
管理者だけがステータス変更可能
ロールごとに編集権限を分ける
管理画面に「本日公開予定」「公開終了予定」専用リストを作成
規模が大きくなっても破綻しにくい設計が可能です。
Pageの「公開/非公開」だけで管理している
公開日時を1つのフィールドで済ませている
管理画面で未来の記事が見えない
これらは、後から必ず運用負荷になります。
ProcessWireで配信スケジュール管理をラクにするには、
ステータス管理
公開開始・終了日時の分離
自動表示制御
この3点を設計段階で組み込むことが重要です。
ProcessWireは「何でもできる」CMSだからこそ、運用を想定したルール設計が価値を生みます。
「ブランドを最大限に活かしたWebサイトを作りたい!」
「短期間で高品質なサイトを構築したい!」
そんなお悩みをお持ちの方は、ぜひご相談ください。
夢双合同会社はヘッドレスCMS「ProcessWire」を取り入れた、日本で数少ない制作会社になります。
お問い合わせはこちら → https://6sou.site/contact.php