基本概念とデータの構造

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

インストール
テックブログ