進捗メモ

✗2026.02.23『WD旅の記録』管理システム設計図★






【WD旅の記録】Airtable構築・運用詳細設計書

【WD旅の記録】Airtable構築・運用詳細設計書

本設計書は、「WD旅の記録」の管理システムをAirtable上に構築するための具体的なレシピ(設定手順)と運用ルールを定義したものです。

1. テーブル&フィールド定義(データベース構築)

Airtableで作成する7つのコアテーブルと、そこに設定すべき主要なフィールド(列)の定義です。

① Posts(記事テーブル)

記事のライフサイクルとパフォーマンスを管理するメインテーブル。

  • 記事ID (Primary): Auto Number または Formula (例: "WD-" & REPT("0", 4-LEN(Autonumber&"")) & Autonumber)。不動の共通ID。
  • 表示用No: Single line text (例: 20260221-01)。ロケ日確定後に手動で付与。
  • 記事タイトル: Single line text
  • ステータス: Single select (企画中 / 執筆中 / 下書き確認 / 本番反映中 / 公開準備 / 公開中 / SNS対応中 / 運用完了)
  • ロケ日 (ShootDays): Link to ShootDays (複数選択可)
  • 画像配置チェック: Checkbox (執筆前に画像をWPに配置し終わったか)
  • WordPress移行チェック: Multiple select (st貼り付け済 / live貼り付け済)
  • 執筆担当者: Link to Contributors
  • 執筆料: Rollup または Link to Costs (Costsテーブルから該当する執筆料を引っ張る)
  • 最新PV / 収益: Number / Currency (定期的に手動またはAPIで更新)

② ShootDays(ロケ日テーブル)★素材集約のハブ

1日のロケを定義し、素材をぶら下げるテーブル。

  • ロケ日ID (Primary): Formula (例: DATETIME_FORMAT(Date, 'YYYYMMDD') & "-" & 目的地)
  • 日付: Date
  • 目的地/概要: Single line text
  • 所属する旅 (Trips): Link to Trips
  • 紐づく記事 (Posts): Link to Posts (自動逆リンク)
  • 獲得画像 (Images): Link to Images (この日に撮った全画像)
  • 獲得動画 (Movies): Link to Movies (この日に撮った全動画)

③ Trips(旅/案件テーブル)

  • 旅程名 (Primary): Single line text (例: 2026年2月 関西サウナ旅)
  • 期間: Date (Start & End)
  • 全体予算: Currency
  • 紐づくロケ日: Link to ShootDays (自動逆リンク)

④ Images(画像テーブル)

  • ファイル名/画像ID (Primary): Single line text
  • ステータス: Single select (未着手 / 加工中 / 加工済 / 差し替え待ち / ボツ)
  • WP掲載URL: URL (img.wayfaring.jpのURL。これが正となる)
  • バックアップURL: URL (Googleフォト等)
  • 撮影日/ロケ日: Link to ShootDays
  • 使用記事: Link to Posts
  • 撮影者: Link to Contributors
  • 加工担当者: Link to Contributors
  • 加工料: Link to Costs

⑤ Movies(動画テーブル)

  • 動画ID/タイトル (Primary): Single line text
  • 編集ステータス: Single select (未着手 / 編集中 / 完了)
  • YouTube状態: Single select (未アップ / 限定 / 予約 / 公開)
  • YouTube URL: URL
  • 素材保存パス: Single line text (HDD名やGoogle Driveリンク)
  • 撮影日/ロケ日: Link to ShootDays
  • 使用記事: Link to Posts

⑥ Contributors(人物・権限テーブル)

  • 名前 (Primary): Single line text
  • 属性: Single select (社内 / 外部クリエイター / 素材サイト)
  • 役割: Multiple select (ライター / カメラマン / 動画編集 / デザイナー)
  • Airtable権限: Single select (Owner / Editor / ReadOnly / 外部Interfaceのみ)
  • 許諾証跡: Attachment (PDFやメールのスクショ等を添付)

⑦ Costs(コスト/支払いテーブル)

  • 支払いID (Primary): Auto Number
  • 種別: Single select (執筆 / 画像加工 / 動画編集)
  • 支払先: Link to Contributors
  • 金額: Currency
  • ステータス: Single select (見積 / 確定 / 請求待ち / 支払済)
  • 対象記事/画像/動画: Link to Posts/Images/Movies (どれに対する支払いか)
  • 証憑: Attachment (請求書等)

2. ビュー(Views)の設計

各メンバーが「自分のやるべきこと」に集中できるよう、テーブルごとに専用のビューを作成します。

  • 【Posts】ライター向け「執筆タスク」: ステータスが「執筆中」かつ、担当者が自分になっているレコードのみを表示。
  • 【Images】デザイナー向け「加工待ちリスト」: ステータスが「未着手」「加工中」のものだけを抽出したカンバン(Kanban)ビュー。
  • 【Posts】管理者向け「WP移行チェック」: ステータスが「本番反映中」かつ「移行チェック」が空欄のものだけを表示。
  • 【Costs】経理向け「今月の未払いリスト」: 支払ステータスが「確定」または「請求待ち」のものを抽出。

3. 自動化(Automations)の設定

Airtableの「Automations」タブで設定する、実務を助けるロボット機能です。

自動化1:画像の加工完了を検知(フラグ立て)

  • Trigger (きっかけ): Images テーブルで、ある画像が「加工済」になった時。
  • Action (動作): その画像が紐づく Posts (記事) に対して、「全ての画像が加工済みか?」を判定する数式フィールド(Rollup等を使用)がTRUEになったら、Slackに「記事ID: XXの画像準備が完了しました。執筆を開始できます」と通知を飛ばす。

自動化2:支払いステータスの連動

  • Trigger (きっかけ): Posts でステータスが「下書き確認」→「本番反映中」に進んだ時(=原稿の納品完了)。
  • Action (動作): その記事に紐づく Costs レコードの支払ステータスを自動的に「見積」から「確定(請求待ち)」に変更する。

4. 日々の運営マニュアル(ルール)

① 企画〜素材整理のフロー

  1. 旅行計画時: Trips に旅行を作成。
  2. ロケ終了後: 日付ごとに ShootDays を作成し、旅行と紐付ける。
  3. 素材のアップロード: 撮影した画像と動画をAirtableに入れ、すべて該当する ShootDays に紐付ける。
  4. 記事の企画: Posts に記事を作成。「この記事には、このロケ日のこの素材を使う」という形で、記事に対して ShootDaysImages をリンクさせる。

② WordPressとの共通ID連携フロー

  1. Posts レコードが作成された瞬間に、Airtableが自動で 固定ID (WD-XXXX) を発行する。
  2. ライターまたは管理者がWordPress(ステージング環境)で新規記事の「下書き」を作成した際、WPの管理画面にある「メモ欄」にこの 固定ID をコピペする。
  3. 同時に、Airtableの「WP移行チェック(st貼り付け済)」にチェックを入れる。
  4. これにより、Airtable側のステータスが進行しても、常にWP側のどの記事を指しているかが一意に保証される。

③ 外部ライター・クリエイターの巻き込み方(Interface活用)

外部のメンバーにAirtableの裏側(全てのコストや他の人の記事)を見せないよう、Airtable Interfaces 機能を使って「専用ダッシュボード」を作成します。

  • 外部メンバーがログインすると、自分に割り当てられた「執筆中の記事」と「報酬額」だけが見える画面が表示される。
  • ステータスの変更(執筆完了しました、等)も、その画面のボタンから行えるようにする。

この設計図に従ってAirtableのベースを構築することで、破綻のないスケーラブルな管理システムが実現します。


-進捗メモ