테마
PRODUCT_DETAIL
- 상품 단건에 대한 상세 정보를 가져올 수 있어요.
- 상품 상세 페이지처럼 특정 상품의 디테일한 정보를 표시해야 하는 블록에 적합해요.
html
<template>
<div>
<h1>{{property.product.name}}</h1>
<div>
<!-- 가격 미노출(-1) 설정된 경우 대체 문구 표시 -->
{{#if eq (property.product.price.sale -1)}}
{{property.product.purchaseRule.gradeLimit.priceAlternativePhrase}}
{{else}}
{{property.product.price.sale}}
{{/if}}
</div>
<div>{{property.product.description.body}}</div>
</div>
</template>jsx
"product": {
"id": "...", // 상품 ID
"slug": "...", // 상품 슬러그 (상품 URL에 사용)
"type": "tangible", // 상품 유형 ("tangible", "intangible")
"status": "active", // 상품 상태 (예: "active", "inactive")
"isOutOfStock": false, // 품절 여부
"images": [ // 상품 이미지 목록
{ "url": "https://example.org/image.png" }
],
"name": "상품 이름", // 상품 이름
"summary": "요약 설명", // 상품 요약
"description": { // 상품 설명
"body": "<p>상세 설명</p>", // 본문 HTML
"header": { // 공통 상단 설명 (없는 경우 null)
"name": "...", // 공통 설명 이름
"description": "<p>...</p>" // 공통 설명 본문 HTML
},
"footer": { // 공통 하단 설명 (없는 경우 null)
"name": "...", // 공통 설명 이름
"description": "<p>...</p>" // 공통 설명 본문 HTML
}
},
"supplements": [ // 보조 설명 목록
{
"title": "보조 설명 제목", // 보조 설명 제목
"description": {
"body": "<p>...</p>" // 보조 설명 본문 HTML
}
}
],
"price": { // 가격 정보
"original": 10000, // 정가
"sale": 9000 // 판매가
},
"discounts": [ // 할인 목록
{
"name": null, // 할인 이름 (있는 경우)
"type": "percentage", // 할인 타입 (예: "percentage", "fixed")
"discounted": 1000, // 할인 금액
"value": 10, // 할인값 (예: 10% 또는 1000원)
"discountType": "default" // 할인 분류
}
],
"purchaseRule": { // 구매 규칙
"quantityLimit": { // 구매 수량 제한 (없는 경우 null)
"scope": "product", // 수량 제한 범위 ("product", "variant")
"min": 1, // 최소 구매 수량 (없는 경우 null)
"max": 10 // 최대 구매 수량 (없는 경우 null)
},
"gradeLimit": { // 등급 제한
"priceAlternativePhrase": null // 가격 대체 문구 (예: "VIP 공개")
}
},
"shipping": { // 배송 정보
"calculation": {
"type": "separated" // 배송비 계산 방식 (예: "separated", "bundled")
},
"methods": [ // 배송 방식 목록 (현재는 항상 1개)
{
"id": "...", // 배송 방식 ID
"name": "택배", // 배송 방식 이름
"policies": [ // 배송 정책 목록
{
"country": "KR", // 국가 코드
"rules": [ // 기본 배송 규칙
{
"fee": 3000, // 배송비
"free": {
"priceOver": null // 무료 배송 조건 금액 (null이면 무료 배송 없음)
}
}
],
"regions": [ // 지역별 추가 배송 규칙 목록
{
"name": "제주 지역",
"rules": [ ... ]
}
]
}
]
}
]
},
"categories": [ // 카테고리 목록
{
"path": [ // 카테고리 경로 (최상위 → 하위 순)
{
"id": "...", // 카테고리 ID
"name": "상위 카테고리" // 카테고리 이름
},
{
"id": "...",
"name": "하위 카테고리"
}
]
}
],
"review": { // 리뷰 정보
"publicReviewAverageRating": 4.5, // 평균 평점
"publicReviewCount": 10 // 리뷰 개수
},
"createdAt": "2026-01-01T00:00:00.000Z", // 생성 일시
"updatedAt": "2026-01-01T00:00:00.000Z" // 수정 일시
}