基本概念とデータの構造
SUMMARY
配送日時の設定は グループ 単位。グループ1 = 標準 (紐づけのない商品の既定)。グループ内に スロット (配送方法の選択肢) を持てる。
ENTITIES
group: # 内部名: pattern
ui: 設定 → グループ管理
key: グループ番号 (1 = 標準)
has: priority (小さいほど優先), name, 日付/時間の設定一式
note: グループ間の設定は独立 (休業日などは共有されない)
slot: # 配送方法の選択肢。グループ内に複数
ui: 設定 → 配送方法の表示
has: title, 日付/時間の設定一式 (スロットごとに別)
product_link: # 商品とグループの紐づけ
- 商品管理で商品ごとに指定
- 商品タグで指定 (タグ名 → グループ)。「タグ::SKU」でバリアント単位
- 条件で選択 (重量 / 合計金額 / 在庫数)
- どれも無い → グループ1
UI_LABELS
左メニュー: 設定 / 非表示商品 / スタイル / オンラインストア / オプション / 連携(プロプラン) / CSV / お知らせ。 画面上部のボタン: 「タグを追加」、「問合せ」。
| 概念 | 管理画面の場所と項目名 | 設定キー (内部) |
|---|---|---|
| 日付を出さない | 設定 → カード「配送希望日」→「配送希望日を表示しない」 | display.date |
| 時間を出さない | 設定 → カード「配送指定時間」→「配送希望時間指定を表示しない」 | display.time |
| 表示ラベル | 各カードの「表示ラベル」 | label.date / label.time |
| 最短日 | 「最短日: 注文日から [ ] 日後」 | rangeDate.start |
| カレンダーデイ | 「営業日(…)とカレンダーデイ(…)の設定にする」→「カレンダーデイ」 | rangeDate.calStart |
| 最長日 | 「最長日: 注文日から [ ] 日後」 | rangeDate.end |
| 最短日から数える | 「最短日から最長日を計算する」 | rangeDate.endAs |
| カットオフ | 「カットオフの時間」(適用しない / 0:00〜23:00) | cutOffTime (99=適用しない) |
| 営業休業日 | 最短日の下の「営業休業日」(曜日チェック+カレンダー) | holidays / holidayWeeks |
| 指定不可日 | 「指定不可日」(曜日チェック+カレンダー) | dates / disableWeeks |
| 指定可能日 | 「指定した日だけにする」ONで「指定不可日」が「指定可能日」に変わる | rangeDate.valid |
| 地域別の最短日調整 | 「選択肢(配送地域など)による最短日の調整を設定する」 | selectDays / label.area |
| 日付の必須化 | 「配送日の指定を必須化する」(プレースホールダー / アラートメッセージ) | essentials.activeDate |
| 時間の必須化 | 「配送時間を必須化する」(必須化の文章 / アラートメッセージ) | essentials.activeTime |
| 時間帯の選択肢 | カード「配送指定時間」の一覧と「追加」 | times |
| 時間の詳細設定 | 「詳細な配送時間の設定を有効にする (…)」 | timesDetail |
| 配送方法 (スロット) | カード「配送方法」→「配送方法を表示する」「追加する」 | slotDisplay / slotOpts |
| 商品のグループ化 | カード「対象商品」→「商品毎のグループを有効にする」 | patternChecked |
| グループ管理 | カード「商品のグループ化」→「グループ管理」「追加する」 | patterns |
| 優先順位 | 「優先順位」の上下ボタン | priority |
| 選択条件 | 「選択条件」→「条件を有効にする」(重量/金額/在庫数) | conditions |
| タグでの紐づけ | 「商品管理」→「商品毎の設定に商品のタグを使用する」 | productsControlTags / productsTags |
| 非表示商品 | 「非表示商品」→ 商品一覧「非表示設定」の「表示しない」 | productsNoDisplay |
| 非表示優先 | 「複数の商品がカートに入っていた場合は「表示しない」を優先する」 | productsNoDisplayUsual |
RULES
C-1 グループ1は削除不可の標準。紐づけの無い商品は必ずグループ1になる。
C-2 グループの設定は独立。グループ1の指定不可日はグループ2に反映されない。
C-3 priority は数字が小さいほど優先。
C-4 スロットがある場合、日付/時間の設定はスロットごとに持つ。
C-6 グループを削除すると、そのグループへの商品の紐づけ・タグ設定・配送方法のカスタマイズ設定も消え、該当商品はグループ1になる。
C-5 商品タグの特殊形式「タグ名::SKU」は、そのSKUのバリアントだけをグループに紐づける。
C-7 配送日時は、ウィジェットがカートの属性に書き込み、注文では「追加の詳細」(order.customAttributes) になる。まず保存されるのはここ (085 の L-13 / 080 の TS-1)。
C-8 「追加の詳細」のキー名は、管理画面の表示ラベル (配送希望日・配送希望時間など) と同じ。ラベルを変えるとキーも変わる (TS-1)。値は、日付が「カレンダーの設定」の「入力される日付のフォーマット」(既定 YYYY年M月D日。管理画面の言語による。040 の D-5)、時間が選んだ時間帯の選択肢の文字。
C-9 Pro プランの「連携」では、「追加の詳細」のキー (連携用のラベル) と日付・時間の書式を、表示ラベルとは別に決められる。連携先の初期値は 130 の表 (例: ネクストエンジン delivery_date / YYYY/MM/DD)。日付と時間を 1 つの値にもできる (130 の K-5)。
C-10 注文のメタフィールド・注文メモ・注文タグにも入れたいときは、「オプション」の「注文への自動書き込み」を使う (Shopify Flow が必要。070 の PROC-O2)。メタフィールドは、ネームスペースとキーを指定する (既定 custom.delivery_date / custom.delivery_time)。型は日付型 / テキスト型 (日付型は年-月-日)。
C-11 注文メタフィールドの「CSV 出力」(Pro の 090 / 100) は、すでにある注文のメタフィールドを CSV の列に読み出す機能。配送日時をメタフィールドに書き込む機能ではない。
QA
- Q: グループとは? A: 商品ごとに配送日時の設定を変えるための単位。標準はグループ1。商品をグループに紐づけて使う。
- Q: 商品ごとに別々の配送日を指定できる? A: できない。1つの注文には1つの配送日時が付く (R7)。
- Q: 配送日時は注文にどう保存される? キー名・値の形式は? 注文メタフィールドに保存できる? A: まず注文の「追加の詳細」(customAttributes) に、キー=表示ラベル・値=日付 (入力される日付のフォーマット) / 時間帯の文字、で保存される (C-7, C-8)。メタフィールドにも入れたいときは「オプション」の「注文への自動書き込み」(Shopify Flow が必要) を使う (C-10)。Pro の連携では、キーと書式を連携先に合わせられる (C-9)。キー名の具体例 (既定のラベル) は、管理画面の「表示ラベル」の設定による。CSV の変数 (order.date など) は CSV 出力用の名前で、実際のキー名ではない。
- Q: スロットとグループの違いは? A: グループは商品ごとの設定の単位、スロットは同じグループ内の配送方法 (宅配 / 店舗受取 など) の選択肢。
ESCALATE
- 管理画面の項目が見当たらない: プラン (Normal / Pro) とアプリのバージョン表示を確認する。
SEE