Trang này cung cấp thông tin tham khảo để thêm mã đánh dấu dữ liệu có cấu trúc vào dữ liệu về giá của khách sạn.
Tổng quan
Dữ liệu có cấu trúc về giá khách sạn được dùng để giải thích, xác thực và hiển thị chi tiết giá khách sạn được đăng trên trang web của bạn, bất kể giao diện người dùng. Điều này cũng bao gồm giá cơ bản, giá, phòng, phí và thuế cũng như các trường liên quan đến giá.
Google khuyến khích các đối tác chú thích trang web của họ bằng dữ liệu có cấu trúc được tiêu chuẩn hoá mà trình thu thập thông tin có thể đọc được; do schema.org cung cấp, để trích xuất giá một cách chính xác từ các trang web của bạn.
Điều này giúp mở rộng quy trình xác thực độ chính xác về giá bằng cách cải thiện độ tin cậy của trình thu thập dữ liệu. Lợi ích cho bạn là tăng số lượt xác thực độ chính xác về giá và khả năng gỡ lỗi trực tiếp các vấn đề về độ chính xác về giá, đồng thời có được điểm nhất quán về độ chính xác về giá.
Nếu mới làm quen với dữ liệu có cấu trúc, hãy tìm hiểu thêm về Từ vựng và định dạng dữ liệu có cấu trúc.
Google Khách sạn đề xuất định dạng JSON-LD để chú thích các trang trên trang web của bạn. Tham khảo phần Các định dạng được hỗ trợ để tìm hiểu thêm về các định dạng được chấp nhận khác. Tài liệu này cung cấp nội dung tham khảo chi tiết dành riêng cho việc triển khai dữ liệu có cấu trúc trong Khách sạn.
Dữ liệu có cấu trúc Hotel được dùng để chú thích các trường dành riêng cho khách sạn trong trang web của bạn. Dữ liệu có cấu trúc Hotel có các thuộc tính sau:
Các thuộc tính
namevàaddressmakesOffertài sảnHotel priceSpecificationtài sảnhasMerchantReturnPolicytài sảneligibleCustomerTypetài sản
Dữ liệu có cấu trúc HotelRoom được dùng để chú thích các trường dành riêng cho phòng trong trang web của bạn.
Dữ liệu có cấu trúc HotelRoom có các thuộc tính sau:
offerstài sảnCác thuộc tính
bedvàoccupancyThuộc tính
HotelRoom priceSpecificationincludesObjecttài sảnavailabilitytài sảnamenityFeaturetài sản
Dữ liệu có cấu trúc về khách sạn
Các thuộc tính name và address
Các thuộc tính name và address được dùng để chú thích tên và vị trí của khách sạn. Sau đây là các thuộc tính name và address:
"@type": "Hotel",
"name": "hotel-name",
"identifier": "hotel-id-1234",
"address": {
"@type": "PostalAddress",
"addressCountry": "XX",
"addressLocality": "City Name",
"addressRegion": "State Name",
"postalCode": "01234",
"streetAddress": "1234 Main St."
},
Cú pháp
Thuộc tính name và address sử dụng cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "hotel-name",
"identifier": "hotel-id-1234",
"address": {
"@type": "PostalAddress",
"addressCountry": "XX",
"addressLocality": "City Name",
"addressRegion": "State Name",
"postalCode": "01234",
"streetAddress": "1234 Main St."
},
"makesOffer": {
"@type": ["Offer", "LodgingReservation"]
...
}
}
Thuộc tính
Sau đây là các thuộc tính name và address:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Hotel.name | Required | string | Tên khách sạn |
| Hotel.identifier | Required | string | Mã khách sạn của đối tác. Giá trị nhận dạng phải là một chuỗi riêng biệt cho mỗi khách sạn và phải khớp chính xác với chuỗi được dùng trong nguồn cấp dữ liệu giá. |
| Hotel.address | Optional | PostalAddress | Địa chỉ hoặc vị trí của khách sạn. |
Ví dụ
Tên và địa chỉ
Sau đây là ví dụ cơ bản về cách thêm chú giải name và address:
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "Mountain Hotel",
"identifier": "hotel-id-1234",
"address": {
"@type": "PostalAddress",
"addressCountry": "AT",
"addressLocality": "Innsbruck",
"addressRegion": "Tyrol",
"postalCode": "6020",
"streetAddress": "Technikerstrasse 21"
},
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
}
}
Tài sản makesOffer
Chú thích makesOffer được dùng để đánh dấu hành trình lưu trú tại khách sạn.
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"availability": "https://schema.org/InStock",
...
}
Cú pháp
Thuộc tính makesOffer sử dụng cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "hotel-name",
"identifier": "hotel-id-1234",
"address": { ... },
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"availability": "https://schema.org/InStock",
"priceSpecification": { ... }
}
}
Thuộc tính
Sau đây là các thuộc tính makesOffer:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| makesOffer | Required | Offer and LodgingReservation | (Các) ưu đãi của khách sạn cho hành trình đã biết.
Thuộc tính |
| LodgingReservation.checkinTime | Required | DateTime | Giờ nhận phòng theo múi giờ của người dùng. Nếu múi giờ của bạn không được đề cập thì múi giờ của khách sạn sẽ được xem xét. |
| LodgingReservation.checkoutTime | Required | DateTime | Thời gian trả phòng theo múi giờ của người dùng. Nếu múi giờ của bạn không được đề cập thì múi giờ của khách sạn sẽ được xem xét. |
Ví dụ:
makesOffer
Sau đây là ví dụ cơ bản để chú thích ưu đãi khách sạn. Bạn có thể chỉ định nhiều ưu đãi cho một hành trình nhưng trước tiên, bạn nên chỉ định mức giá xuất hiện trên Google, sau đó là các mức giá khác. Số tiền của giá mà bạn chỉ định đã bao gồm tất cả các khoản thuế hiện hành.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "Mountain Hotel",
"identifier": "hotel-id-1234",
"address": { ... },
"makesOffer": [
{
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
},
{
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1200.74,
"priceCurrency": "USD"
}
}
]
}
Tài sản Hotel priceSpecification
Thuộc tính này được dùng để chú thích thông tin về giá cho khách sạn hoặc phòng khách sạn. Bạn cần có thêm 2 thuộc tính để chú thích giá và thuế. Bạn nên sử dụng CompoundPriceSpecification để chỉ định tổng thông tin về giá, chẳng hạn như giá cơ sở, thuế và chiết khấu.
Sử dụng UnitPriceSpecification để chỉ định các loại thuế bổ sung hoặc các loại phí đặc biệt, chẳng hạn như ResortFee, GenericTax và ServiceFee. Thuộc tính priceSpecification được đi kèm với thuộc tính Offer.
{
...
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": "float",
"priceCurrency": "currency"
},
...
]
}
}
Cú pháp
Thuộc tính Hotel priceSpecification sử dụng cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
...
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
...
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "",
"price": "float",
"priceCurrency": "currency"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": "float",
"priceCurrency": "currency",
"priceComponentType": "GenericTax",
"potentialAction": {
"@type": "https://schema.org/PayAction",
"recipient": {
"@type": "OnlineBusiness",
"name": "name-of-the-business"
}
}
},
{
"@type": "UnitPriceSpecification",
"name": "Discount",
"price": "float",
"priceCurrency": "currency",
"priceComponentType": "Discount"
}
]
}
}
}
Vi dữ liệu
<div itemscope itemtype="https://schema.org/Hotel">
<meta itemprop="name" content="hotel-name"/>
...
<div itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation" itemprop="makesOffer">
...
<div itemscope itemtype="https://schema.org/CompoundPriceSpecification" itemprop="priceSpecification">
<meta itemprop="price" content="float"/>
<meta itemprop="priceCurrency" content="currency"/>
<div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
<meta itemprop="name" content=""/>
<meta itemprop="price" content="float"/>
<meta itemprop="priceCurrency" content="currency"/>
</div>
<div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
<meta itemprop="name" content="GenericTax" />
<meta itemprop="price" content="float"/>
<meta itemprop="priceCurrency" content="currency"/>
<meta itemprop="priceComponentType" content="GenericTax"/>
</div>
<div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
<meta itemprop="name" content="Discount"/>
<meta itemprop="price" content="float"/>
<meta itemprop="priceCurrency" content="currency"/>
<meta itemprop="priceComponentType" content="Discount"/>
</div>
</div>
</div>
</div>
Thuộc tính
Sau đây là các thuộc tính hotel priceSpecification:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Hotel.Offer.priceSpecification.price | Required | float | Tổng giá bao gồm thuế và phí của khách sạn. Bạn phải luôn chú thích giá của Google trên trang đích cùng với thông tin chi tiết đầy đủ về giá. Việc chú thích thông tin chi tiết về giá giúp bạn hoàn tất quy trình kiểm tra độ chính xác về giá. Google chấp nhận cả giá ở cấp khách sạn và giá ở cấp phòng. |
| Hotel.Offer.priceSpecification.priceCurrency | Required | currency | Mã đơn vị tiền tệ gồm ba chữ cái cho mức giá đã chỉ định. Ví dụ: "USD"
. |
| Hotel.Offer.priceSpecification.priceComponent | Optional | UnitPriceSpecification[] | Bảng giá chi tiết bao gồm thuế và phí của khách sạn. Có hai loại dữ liệu có cấu trúc về giá:
Bạn phải đặt các giá trị trong thuộc tính |
| Hotel.Offer.priceSpecification.priceComponent. potentialAction | Optional | PayAction | Điểm thanh toán của khách sạn.Quy trình thanh toán tại khách sạn bao gồm giá được tính vào thời gian trả phòng trên trang web đặt phòng và tại khách sạn trong thời gian nhận phòng. Bạn nên sử dụng thuộc tính Google hỗ trợ 2 chế độ cài đặt sau đây cho người nhận
|
Ví dụ
Ví dụ về JSON-LD
Giá
Sau đây là ví dụ cơ bản về cách thêm dữ liệu có cấu trúc về giá vào trang web của bạn. Bạn có thể thêm nhiều ưu đãi ở cấp khách sạn vào thuộc tính makesOffer.
Các loại PostalAddress như addressCountry, postalCode, streetAddress và các trường khác là bắt buộc nếu bạn chọn chỉ định thuộc tính address. Giá do Google hiển thị phải được liệt kê đầu tiên trong thuộc tính makesOffer. Số tiền giá mà bạn chỉ định bao gồm tất cả các khoản thuế hiện hành.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"identifier": "hotel-id-1234",
"address": {
"@type": "PostalAddress",
"addressCountry": "AT",
"addressLocality": "Innsbruck",
"addressRegion": "Tyrol",
"postalCode": "6020",
"streetAddress": "Technikerstrasse 21"
},
"makesOffer": [
{
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
},
{
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1200.74,
"priceCurrency": "USD"
}
},
...
]
}
Bảng phân tích giá
Sau đây là ví dụ về thuộc tính priceSpecification có thông tin chi tiết về giá. Mức giá cơ bản, các loại thuế như thuế chung và chiết khấu được xác định bằng thành phần UnitPriceSpecification. Hãy nhớ đặt trường priceComponentType bằng các giá trị tương ứng với thành phần UnitPriceSpecification.
Bạn nên chỉ định tổng giá cho thời gian lưu trú trong thuộc tính CompoundPriceSpecification. Bạn nên chỉ định thông tin chi tiết về giá trong thuộc tính priceComponent.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"identifier": "hotel-id-1234",
"address": {...},
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "",
"price": 1150,
"priceCurrency": "USD"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": 172.74,
"priceCurrency": "USD",
"priceComponentType": "GenericTax"
},
{
"@type": "UnitPriceSpecification",
"name": "Discount",
"price": -100,
"priceCurrency": "USD",
"priceComponentType": "Discount"
}
]
}
}
}
Điểm thanh toán
Sau đây là ví dụ về quy cách potentialAction khi sử dụng loại người nhận của PayAction.
Tổng giá của gói là 11.700.000 VND và trang web trực tuyến tính một phần tổng giá là 11.500.000 VND tại thời điểm đặt phòng được chỉ định bằng "@type": "OnlineBusiness" và người dùng phải thanh toán 200.000 VND còn lại tại thời điểm nhận phòng tại khách sạn được chỉ định bằng @type": "Hotel".
Bạn phải chỉ định thành phần potentialAction để chia nhỏ khoản thanh toán tại thời điểm đặt phòng và tại khách sạn. Nếu bạn không chỉ định, thì payAction sẽ coi khoản thanh toán tại thời điểm đặt phòng là phương thức thanh toán mặc định.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"identifier": "hotel-id-1234",
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00]",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1170,
"priceCurrency": "USD",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"price": 1150,
"priceCurrency": "USD",
"potentialAction": {
"@type": "https://schema.org/PayAction",
"recipient": {
"@type": "OnlineBusiness",
"name": "myonlinebusiness"
}
}
},
{
"@type": "UnitPriceSpecification",
"price": 20,
"priceCurrency": "USD",
"potentialAction": {
"@type": "https://schema.org/PayAction",
"recipient": {
"@type": "Hotel",
"name": "The Langham, Boston",
"address": { ... }
}
}
}
]
}
}
}
Ví dụ về vi dữ liệu
Bảng phân tích giá
Sau đây là ví dụ về thuộc tính priceSpecification có thông tin chi tiết về giá. Mức giá cơ bản, các loại thuế như thuế chung và chiết khấu được xác định bằng thành phần UnitPriceSpecification. Hãy nhớ đặt thuộc tính name bằng các giá trị tương ứng với thành phần UnitPriceSpecification.
Bạn nên chỉ định tổng giá cho thời gian lưu trú trong thuộc tính CompoundPriceSpecification. Bạn nên chỉ định thông tin chi tiết về giá trong thuộc tính priceComponent.
<div itemscope itemtype="https://schema.org/Hotel">
<meta itemprop="name" content="ACME Hotel"/>
<meta itemprop="identifier" content="hotel-id-1234"/>
<div itemscope itemtype="https://schema.org/PostalAddress" itemprop="address">
<meta itemprop="addressCountry" content="US" />
<meta itemprop="addressLocality" content="Mountain View" />
<meta itemprop="addressRegion" content="Santa Clara" />
<meta itemprop="postalCode" content="94040" />
<meta itemprop="streetAddress" content="123 Main street" />
</div>
<div itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation" itemprop="makesOffer">
<meta itemprop="checkinTime" content="2023-03-10 15:00:00" />
<meta itemprop="checkoutTime" content="2023-03-16 10:00:00"/>
<div itemscope itemtype="https://schema.org/CompoundPriceSpecification" itemprop="priceSpecification">
<meta itemprop="price" content="1222.74" />
<meta itemprop="priceCurrency" content="USD" />
<div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
<meta itemprop="name" content="" />
<meta itemprop="price" content="1150" />
<meta itemprop="priceCurrency" content="USD" />
</div>
<div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
<meta itemprop="name" content="GenericTax" />
<meta itemprop="price" content="172.74" />
<meta itemprop="priceCurrency" content="USD" />
<meta itemprop="priceComponentType" content="GenericTax" />
</div>
<div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
<meta itemprop="name" content="Discount" />
<meta itemprop="price" content="-100" />
<meta itemprop="priceCurrency" content="USD" />
<meta itemprop="priceComponentType" content="Discount" />
</div>
</div>
</div>
</div>
Tài sản hasMerchantReturnPolicy
Thuộc tính này được dùng để chú thích chính sách hoàn tiền của người bán trong hành trình.
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"refundType": "https://schema.org/FullRefund",
"merchantReturnDays": "YYYY-MM-DD[THH:mm:ss]",
"restockingFee": 0
}
Cú pháp
hasMerchantReturnPolicy có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
...
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"priceSpecification": { ... },
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"refundType": "https://schema.org/FullRefund",
"merchantReturnDays": "YYYY-MM-DD[THH:mm:ss]",
"restockingFee": 0
}
}
}
Thuộc tính
Sau đây là thuộc tính hasMerchantReturnPolicy:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Offer.hasMerchantReturnPolicy | Optional | MerchantReturnPolicy | Chính sách hoàn tiền của người bán. Đối tác nên sử dụng Nếu bạn không chỉ định hoặc để trống |
Ví dụ:
Chính sách trả lại hàng
Sau đây là ví dụ cơ bản về dữ liệu có cấu trúc cho một khách sạn có thông tin chi tiết về phòng và tổng giá bao gồm thuế và phí. Ví dụ này biểu thị một lượt lưu trú có thể huỷ mà không bị tính phí cho đến 11 giờ tối (giờ UTC) ngày 18 tháng 12 năm 2023. Đối tác nên sử dụng "MerchantReturnPolicy.restockingFee" để cho biết chính sách huỷ không hoàn lại toàn bộ số tiền lưu trú. Giá trị mặc định của restockingFee là 0.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"identifier": "hotel-id-1234",
"description": "Beautiful resort in the outskirts of the city",
"address": {...},
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-12-15 16:00:00",
"checkoutTime": "2023-12-20 11:00:00",
"priceSpecification": {...},
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"refundType": "https://schema.org/FullRefund",
"merchantReturnDays": "2023-12-18 23:00:00",
"restockingFee": 0
}
}
}
Tài sản eligibleCustomerType
Bạn có thể dùng thuộc tính này để chú thích các chương trình phần thưởng dành cho khách hàng là thành viên của khách sạn.
"eligibleCustomerType": "RewardsMember",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency"
}
Cú pháp
Thuộc tính eligibleCustomerType có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
...
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"eligibleCustomerType": "RewardsMember",
"priceSpecification": { ... }
}
}
Thuộc tính
Sau đây là thuộc tính eligibleCustomerType:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Offer.eligibleCustomerType | Optional | BusinessEntityType | Chương trình khách hàng thân thiết hoặc phần thưởng dành cho thành viên mà khách hàng được hưởng. Nhiều trang khách sạn hiển thị giá dành cho thành viên cùng với giá công khai để khuyến khích người dùng đăng ký chương trình khách hàng thân thiết. Bạn có thể chỉ định giá chỉ dành cho một số đối tượng nhất định, chẳng hạn như giá dành cho thành viên, bằng cách đặt thuộc tínhOffer.eligibleCustomerType. |
Ví dụ
Giá dành cho thành viên
Sau đây là ví dụ cơ bản về quy cách giá dành cho thành viên hoặc giá có chiết khấu cho chương trình khách hàng thân thiết. Khách hàng là "thành viên chương trình phần thưởng" của khách sạn.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"identifier": "hotel-id-1234",
"address": {...},
"makesOffer": {
"@type": ["Offer", "LodgingReservation"],
"name": "RewardsMember",
"checkinTime": "2023-12-15 16:00:00",
"checkoutTime": "2023-12-20 11:00:00",
"eligibleCustomerType": "RewardsMember",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1342.74,
"priceCurrency": "USD",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "Base rate",
"price": 1069.98,
"priceCurrency": "USD"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": 172.74,
"priceCurrency": "currency"
},
{
"@type": "UnitPriceSpecification",
"name": "ResortFee",
"price": 100,
"priceCurrency": "USD"
}
]
}
}
}
Giá dành cho thành viên và giá thông thường
Đây là ví dụ về cả chú thích giá thông thường và giá dành cho thành viên. Giá dành cho thành viên sẽ được niêm yết trước, sau đó là giá thông thường.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"identifier": "hotel-id-1234",
"address": {...},
"makesOffer": [
{
"@type": ["Offer", "LodgingReservation"],
"name": "RewardsMember",
"checkinTime": "2023-12-15 16:00:00",
"checkoutTime": "2023-12-20 11:00:00",
"eligibleCustomerType": "RewardsMember",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1342.74,
"priceCurrency": "USD",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "Base rate",
"price": 1069.98,
"priceCurrency": "USD"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": 172.74,
"priceCurrency": "currency"
},
{
"@type": "UnitPriceSpecification",
"name": "ResortFee",
"price": 100,
"priceCurrency": "USD"
}
]
}
},
{
"@type": ["Offer", "LodgingReservation"],
"name": "regularRate",
"checkinTime": "2023-12-15 16:00:00",
"checkoutTime": "2023-12-20 11:00:00",
"priceSpecification": {
"price": 1572.24,
"priceCurrency": "USD",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "Base rate",
"price": 1369.98,
"priceCurrency": "USD"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": 202.26,
"priceCurrency": "currency"
},
{
"@type": "UnitPriceSpecification",
"name": "ResortFee",
"price": 100,
"priceCurrency": "USD"
}
]
}
}
]
}
Dữ liệu có cấu trúc HotelRoom
Tài sản offers
Chú thích offers được dùng để đánh dấu hành trình của phòng. Bạn nên sử dụng thuộc tính offers cho quy cách HotelRoom.
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "hotel-room-id-1234",
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"priceSpecification": {...}
}
Cú pháp
Thuộc tính offers có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "HotelRoom",
"identifier": "hotel-room-id-1234",
"offers": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency",
...
}
}
}
Thuộc tính
Sau đây là các thuộc tính offers:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| offers | Required | Offer and LodgingReservation | Quy cách về giá phòng cho hành trình đã biết. Thuộc tính |
| LodgingReservation.checkinTime | Required | DateTime | Giờ nhận phòng theo múi giờ của người dùng. Nếu múi giờ của bạn không được đề cập thì múi giờ của khách sạn sẽ được xem xét. |
| LodgingReservation.checkoutTime | Required | DateTime | Thời gian trả phòng theo múi giờ của người dùng. Nếu múi giờ của bạn không được đề cập thì múi giờ của khách sạn sẽ được xem xét. |
Ví dụ:
phiếu mua hàng
Sau đây là ví dụ cơ bản về cách chỉ định offers trong thuộc tính HotelRoom.
{
"@context": "https://schema.org",
"@type": "HotelRoom",
"identifier": "hotel-room-id-1234",
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
}
}
Thuộc tính bed và occupancy
Thuộc tính bed được dùng để chú thích loại giường và số lượng giường có trong phòng. Thuộc tính occupancy được dùng để chú thích số lượng khách trong phòng. Bạn có thể chỉ định các thuộc tính bed và occupancy bằng thuộc tính HotelRoom.
"@type": "Hotel",
"identifier": "hotel-id-1234",
"containsPlace": {
"@type": ["HotelRoom", "Product"],
"identifier": "hotel-room-id",
"bed": {
"@type": "BedDetails",
"numberOfBeds": "integer",
"typeOfBed": "KING"
},
"occupancy": {
"@type": "QuantitativeValue",
"value": "integer"
}
}
Cú pháp
Thuộc tính bed và occupancy có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "hotel-name",
"identifier": "hotel-id-1234",
"containsPlace": {
"@type": ["HotelRoom", "Product"],
"name": "room-name",
"identifier": "hotel-room-id-1234",
"bed": {
"@type": "BedDetails",
"numberOfBeds": "integer",
"typeOfBed": "KING"
},
"occupancy": {
"@type": "QuantitativeValue",
"value": "integer"
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency",
"priceComponent": {
"@type": "UnitPriceSpecification",
"name": "",
"price": "float",
"priceCurrency": "currency"
},
...
}
}
}
}
Bạn chỉ có thể đặt các thuộc tính bed và occupancy bằng cách sử dụng thuộc tính HotelRoom. Bạn có thể thêm thông tin cụ thể về phòng, bao gồm cả giá ở cấp phòng, vào thuộc tính Hotel thông qua thuộc tính containsPlace. Tham khảo ví dụ về quy cách Hotel và HotelRoom.
Thuộc tính
Sau đây là các thuộc tính bed và occupancy:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| HotelRoom.bed | Optional (Recommended) | bed | Loại giường có trong cơ sở lưu trú và số người lưu trú trong phòng. Sau đây là các giá trị được hỗ trợ:
|
| HotelRoom.occupancy | Optional (Recommended) | QuantitativeValue | Số lượng khách trong phòng khách sạn. Loại cho số người lưu trú là Số người lưu trú là một thuộc tính rõ ràng của |
| containsPlace | Optional (Recommended) | LocationFeatureSpecification | Bạn có thể dùng thuộc tính này để chú thích giá ở cấp phòng được liên kết với các phòng cụ thể. Bạn cũng có thể dùng thuộc tính này để chỉ định các tiện nghi trong phòng. Tìm hiểu thêm về cách sử dụng |
Ví dụ
HotelRoom
Sau đây là ví dụ cơ bản về giường và số người lưu trú cho một quy cách phòng.
{
"@context": "https://schema.org",
"@type": ["HotelRoom", "Product"],
"name": "Deluxe Room, 1 King Bed",
"identifier": "hotel-room-id-1234",
"bed": [
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "KING"
},
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "SINGLE"
}
],
"occupancy": {
"@type": "QuantitativeValue",
"value": 2
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
}
}
Khách sạn và HotelRoom
Sau đây là ví dụ về cách chú thích các thuộc tính Hotel và HotelRoom cùng với bed, occupancy và priceSpecification.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "hotel-name",
"identifier": "hotel-id-1234",
"containsPlace": {
"@type": ["HotelRoom", "Product"],
"name": "Deluxe Room, 1 King Bed",
"identifier": "hotel-room-id",
"bed": {
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "KING"
},
"occupancy": {
"@type": "QuantitativeValue",
"value": 2
},
"amenityFeature": {
"@type": "LocationFeatureSpecification",
"name": "Minibar",
"value": true
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
}
}
}
Tài sản HotelRoom priceSpecification
Quy cách về giá phòng khách sạn tương tự như quy cách về giá khách sạn.Điểm khác biệt là giá phòng được chỉ định bằng thuộc tính Product.offers thay vì thuộc tính Hotel.makesOffer.
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency",
"priceComponent": {
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": "float",
"priceCurrency": "currency"
}
...
}
Cú pháp
Thuộc tính priceSpecification cho phòng khách sạn có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": ["HotelRoom", "Product"],
...
"bed": {
"@type": "BedDetails",
"numberOfBeds": "integer",
"typeOfBed": "KING"
},
"occupancy": {
"@type": "QuantitativeValue",
"value": "integer"
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
...
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "",
"price": "float",
"priceCurrency": "currency"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": "float",
"priceCurrency": "currency",
"priceComponentType": "GenericTax"
},
{
"@type": "UnitPriceSpecification",
"name": "Discount",
"price": "float",
"priceCurrency": "currency",
"priceComponentType": "Discount"
}
]
}
}
}
Thuộc tính
Sau đây là các thuộc tính HotelRoom priceSpecification:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Hotel.Offer.priceSpecification.price | Required | float | Giá mỗi phòng bao gồm thuế và phí cho Bạn phải luôn chú thích giá của Google trên trang đích cùng với thông tin chi tiết đầy đủ về giá. Việc chú thích thông tin chi tiết về giá giúp bạn hoàn tất quy trình kiểm tra độ chính xác về giá. Google chấp nhận cả giá ở cấp khách sạn và giá ở cấp phòng. |
| Hotel.Offer.priceSpecification.priceCurrency | Required | currency | Mã đơn vị tiền tệ gồm ba chữ cái cho mức giá đã chỉ định. Ví dụ: "USD"
. |
| Hotel.Offer.priceSpecification.priceComponent | Optional | UnitPriceSpecification[] | Bảng giá chi tiết bao gồm thuế và phí cho phòng khách sạn và số người lưu trú có ưu đãi được liên kết với
|
Ví dụ
Tổng giá phòng
Sau đây là ví dụ cơ bản về cách xác định tổng giá cho thời gian lưu trú và giá theo số người lưu trú.
{
"@context": "https://schema.org",
"@type": ["HotelRoom", "Product"],
"name": "Deluxe Room King, 1 Single Bed",
"identifier": "hotel-room-id-1234",
"bed": [
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "KING"
},
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "SINGLE"
}
],
"occupancy": {
"@type": "QuantitativeValue",
"value": 2
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1232.74,
"priceCurrency": "USD"
}
},
...
}
Bảng phân tích giá phòng
Sau đây là ví dụ về giá theo phòng hoặc gói. Thông tin chi tiết về giá được xác định cho loại phòng, chẳng hạn như phòng Deluxe và loại bed và occupancy, chẳng hạn như giường KING và SINGLE, cũng như sức chứa là 2 khách.
{
"@context": "https://schema.org",
"@type": ["HotelRoom", "Product"],
"name": "Deluxe Room King, 1 Single Bed",
"identifier": "hotel-room-id-1234",
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"bed": [
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "KING"
},
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "SINGLE"
}
],
"occupancy": {
"@type": "QuantitativeValue",
"value": 2
},
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD",
"priceComponent": [
{
"@type": "UnitPriceSpecification",
"name": "Base rate",
"price": 1150,
"priceCurrency": "USD"
},
{
"@type": "UnitPriceSpecification",
"name": "GenericTax",
"price": 172.74,
"priceCurrency": "USD",
"priceComponentType": "GenericTax"
},
{
"@type": "UnitPriceSpecification",
"name": "Discount",
"price": -100,
"priceCurrency": "USD",
"priceComponentType": "Discount"
}
]
}
}
}
Tài sản includesObject
Thuộc tính này dùng để chú thích các dịch vụ theo mức giá cụ thể được cung cấp trong khách sạn hoặc phòng, chẳng hạn như các lựa chọn bữa ăn và dịch vụ đỗ xe. Bạn có thể chú thích includesObject trong thuộc tính Hotel hoặc HotelRoom.
{
"includesObject": [
{
"@type": "TypeAndQuantityNode",
"typeOfGood": {
"@type": "Service",
"name": "Valet"
}
},
{
"@type": "TypeAndQuantityNode",
"amountOfThisGood": "float",
"unitText": "currency",
"typeOfGood": {
"@type": "FoodService",
"name": "MealCredit"
}
}
]
}
Cú pháp
includesObject có cú pháp sau cho các dịch vụ theo mức giá cụ thể có trong phòng:
JSON-LD
{
"@context": "https://schema.org",
...
"@type": ["HotelRoom", "Product"],
...
"offers": {
"@type": ["Offer", "LodgingReservation"],
...
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "float",
"priceCurrency": "currency"
},
"includesObject": [
{
"@type": "TypeAndQuantityNode",
"typeOfGood": {
"@type": "Service",
"name": "Valet"
}
},
{
"@type": "TypeAndQuantityNode",
"amountOfThisGood": "float",
"unitText": "currency",
"typeOfGood": {
"@type": "FoodService",
"name": "MealCredit"
}
}
]
}
}
Thuộc tính
includesObject có thuộc tính sau:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Offer.includesObject | Optional | TypeAndQuantityNode | Các dịch vụ được cung cấp trong khách sạn hoặc phòng. Các tính năng dành riêng cho mức giá được cung cấp bằng thuộc tính Các tính năng dành riêng cho mức giá cũng có thể được đưa vào các ưu đãi ở cấp cơ bản hoặc có thể được chỉ định là gói bổ sung với mức giá bổ sung.
|
Ví dụ:
Dịch vụ
Sau đây là ví dụ cơ bản về các tính năng theo đơn giá cho dịch vụ đỗ xe và dịch vụ ăn uống. Bạn nên chỉ định các tính năng dành riêng cho mức giá bằng thuộc tính "Offer.includesObject". Bạn nên dùng trường tên trên "TypeAndQuantityNode.typeOfGood" để cho biết loại dịch vụ.
{
"@context": "https://schema.org",
"@type": ["HotelRoom", "Product"],
"name": "Deluxe Room, 1 King Bed",
"identifier": "hotel-room-id-1234",
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
},
"includesObject": [
{
"@type": "TypeAndQuantityNode",
"typeOfGood": {
"@type": "Service",
"name": "Valet"
}
},
{
"@type": "TypeAndQuantityNode",
"amountOfThisGood": 50,
"unitText": "USD",
"typeOfGood": {
"@type": "FoodService",
"name": "MealCredit"
}
}
]
}
}
Tài sản availability
Thuộc tính offer.availability được dùng để chú thích các hành trình đã bán hết cho phòng khách sạn.
"offers": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"availability": "https://schema.org/SoldOut"
}
Cú pháp
Thuộc tính availability có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
...
"@type": ["HotelRoom", "Product"],
"name": "room-type",
"identifier": "hotel-room-id-1234",
"bed": {
"@type": "BedDetails",
"numberOfBeds": "integer",
"typeOfBed": "KING"
},
"occupancy": {
"@type": "QuantitativeValue",
"value": "integer"
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "YYYY-MM-DD[THH:mm:ss]",
"checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
"availability": "https://schema.org/SoldOut"
}
}
Thuộc tính
Sau đây là thuộc tính availability:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| Offer.availability | Optional | ItemAvailability | Tình trạng còn phòng của khách sạn hoặc phòng. Tỷ lệ được trích xuất từ
Một mặt hàng không có Bạn không cần chỉ định |
Ví dụ:
Phạm vi cung cấp
Sau đây là một ví dụ cơ bản minh hoạ tình trạng phòng khách sạn không có sẵn. Bạn nên thêm loại giường, số giường và thông tin chi tiết về số người lưu trú cho phòng được chỉ định.
{
"@context": "https://schema.org",
"@type": ["HotelRoom", "Product"],
"name": "Deluxe Room, 1 King Bed",
"identifier": "hotel-room-id-1234",
"bed": [
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "KING"
},
{
"@type": "BedDetails",
"numberOfBeds": 1,
"typeOfBed": "SINGLE"
}
],
"occupancy": {
"@type": "QuantitativeValue",
"value": 2
},
"offers": {
"@type": ["Offer", "LodgingReservation"],
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"availability": "https://schema.org/SoldOut",
"priceSpecification": {...}
}
}
Tài sản amenityFeature
Bạn có thể chỉ định tiện nghi ở loại Hotel hoặc HotelRoom bằng cách sử dụng thuộc tính amenityFeature. Bạn nên dùng thuộc tính containsPlace để chỉ định các tiện nghi được cung cấp trong phòng.
{
"@type": "Hotel",
"amenityFeature": [
{
"@type": "LocationFeatureSpecification",
"name": "HotTub",
"hoursAvailable": {
"@type": "OpeningHoursSpecification",
"opens": "HH:mm:ss",
"closes": "HH:mm:ss"
}
},
{
"@type": "LocationFeatureSpecification",
"name": "GymFitnessEquipment",
"value": "boolean"
}
],
"containsPlace": {
"@type": "HotelRoom",
"amenityFeature": [
{
"@type": "LocationFeatureSpecification",
"name": "Minibar",
"value": true
},
{
"@type": "LocationFeatureSpecification",
"name": "Smoking",
"value": false
}
]
}
}
Cú pháp
Thuộc tính amenityFeature và containsPlace có cú pháp sau:
JSON-LD
{
"@context": "https://schema.org",
"@type": "Hotel",
...
"amenityFeature": {
"@type": "LocationFeatureSpecification",
"name": "HotTub",
"hoursAvailable": {
"@type": "OpeningHoursSpecification",
"opens": "HH:mm:ss",
"closes": "HH:mm:ss"
}
},
"containsPlace": {
"@type": "HotelRoom",
"amenityFeature": {
"@type": "LocationFeatureSpecification",
"name": "Minibar",
"value": "boolean"
}
}
}
Tiện nghi
Các tiện nghi sau đây được cho phép và xác định trong thuộc tính name.
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| amenityFeature.AC | Optional | boolean | Cơ sở lưu trú có máy điều hoà không khí hay không. |
| amenityFeature.AirportShuttle | Optional | boolean | Cơ sở lưu trú có cung cấp dịch vụ đưa đón đến sân bay và các nhà ga khác hoặc theo chiều ngược lại hay không. |
| amenityFeature.Balcony | Optional | boolean | Cơ sở lưu trú có ban công hay không. |
| amenityFeature.BeachAccess | Optional | boolean | Cơ sở lưu trú có lối ra bãi biển công cộng gần khuôn viên hay không. |
| amenityFeature.ChildFriendly | Optional | boolean | Cơ sở lưu trú có phù hợp với trẻ em hay không. |
| amenityFeature.Crib | Optional | boolean | Cơ sở lưu trú có giường cũi cho trẻ em hay không. |
| amenityFeature.Elevator | Optional | boolean | Cơ sở lưu trú có thang máy hay không. |
| amenityFeature.FirePlace | Optional | boolean | Cơ sở lưu trú có lò sưởi hay không. |
| amenityFeature.FreeBreakfast | Optional | boolean | Cơ sở lưu trú có phục vụ bữa sáng miễn phí cho tất cả khách hay không. Sử dụng các tính năng về giá để cho biết bữa sáng chỉ được cung cấp trong một số gói giá cụ thể. |
| amenityFeature.GymFitnessEquipment | Optional | boolean | Cơ sở lưu trú có phòng tập thể dục hoặc bất kỳ thiết bị thể dục nào hay không. |
| amenityFeature.Heating | Optional | boolean | Cơ sở lưu trú có hệ thống sưởi ấm hay không. |
| amenityFeature.HotTub | Optional | boolean | Cơ sở lưu trú có bồn tắm nước nóng hay không. |
| amenityFeature.InstantBookable | Optional | boolean | Cơ sở lưu trú có cho phép đặt phòng ngay lập tức thông qua quy trình thanh toán hay không. Một phương thức khác là chờ phê duyệt. |
| amenityFeature.IroningBoard | Optional | boolean | Cơ sở lưu trú có bàn là hay không. |
| amenityFeature.Kitchen | Optional | boolean | Cơ sở lưu trú có bếp hay không. |
| amenityFeature.Microwave | Optional | boolean | Cơ sở lưu trú có lò vi sóng hay không. |
| amenityFeature.OpenAirBath(Hotels only) | Optional | boolean | Cơ sở lưu trú có bồn tắm ngoài trời hay không. Nếu được chỉ định ở cấp phòng, thì phòng tắm chỉ dành riêng cho người ở trong phòng. |
| amenityFeature.OutdoorGrill | Optional | boolean | Cơ sở lưu trú có bếp nướng hay không. |
| amenityFeature.OvenStove | Optional | boolean | Cơ sở lưu trú có bếp lò hay không. |
| amenityFeature.Patio | Optional | boolean | Cơ sở lưu trú có sân hiên hay không. |
| amenityFeature.Pool | Optional | boolean | Cơ sở lưu trú có hồ bơi hay không. |
| amenityFeature.PrivateBeachAccess | Optional | boolean | Cơ sở lưu trú có lối đi riêng dẫn ra bãi biển dành riêng cho khách lưu trú hay không. |
| amenityFeature.SelfCheckinCheckout | Optional | boolean | Cơ sở lưu trú có hỗ trợ tính năng tự nhận phòng và trả phòng hay không. |
| amenityFeature.WasherDryer | Optional | boolean | Cơ sở lưu trú có máy giặt hay không. |
| amenityFeature.Wifi | Optional | boolean | Cơ sở lưu trú có Wi-Fi hay không. |
| amenityFeature.Smoking | Optional | boolean | Cơ sở lưu trú có cho phép hút thuốc hay không. |
| amenityFeature.InternetType | Optional | Enum | Loại Internet hiện có tại cơ sở lưu trú. Sau đây là các giá trị được hỗ trợ:
|
| amenityFeature.ParkingType | Optional | Enum | Loại chỗ đỗ xe hiện có tại cơ sở lưu trú. Sau đây là các giá trị được hỗ trợ:
|
| amenityFeature.PoolType | Optional | Enum | Loại hồ bơi hiện có tại cơ sở lưu trú. Sau đây là các giá trị được hỗ trợ:
|
| amenityFeature.RoomStyle | Optional | Enum | Cho biết liệu phòng có được thiết kế theo phong cách Nhật Bản hay không. Sau đây là các giá trị được hỗ trợ:
|
| amenityFeature.LicenseNum | Required | string | Số giấy phép của doanh nghiệp sẽ xuất hiện trên cơ sở lưu trú ở một số khu vực trên thế giới. Bạn có thể lặp lại giá trị này và nếu có nhiều giấy phép, bạn nên thêm thông tin về chủ sở hữu hoặc cơ quan cấp phép. Ví dụ: |
Thuộc tính
Sau đây là các thuộc tính amenityFeature:
| Thuộc tính | Bắt buộc? | Loại | Mô tả |
|---|---|---|---|
| amenityFeature | Optional | LocationFeatureSpecification | Tiện nghi được cung cấp trong khách sạn hoặc phòng. Bạn có thể chỉ định giá trị này bằng thuộc tính Bạn có thể chỉ định tiện nghi ở cấp |
| containsPlace | Optional | LocationFeatureSpecification | Tiện nghi được cung cấp trong khách sạn hoặc phòng cho tất cả khách lưu trú. Bạn có thể chỉ định bằng cách sử dụng
|
Ví dụ:
Tiện nghi tại khách sạn và phòng
Sau đây là ví dụ về một khách sạn có bể bơi mở cửa từ 10:00 đến 22:00 và không có phòng tập thể dục. Phòng khách sạn không hút thuốc và có tủ lạnh nhỏ.
{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "ACME Hotel",
"address": { ... },
"amenityFeature": [
{
"@type": "LocationFeatureSpecification",
"name": "HotTub",
"hoursAvailable": {
"@type": "OpeningHoursSpecification",
"opens": "10:00:00",
"closes": "22:00:00"
}
},
{
"@type": "LocationFeatureSpecification",
"name": "GymFitnessEquipment",
"value": false
}
],
"containsPlace": {
"@type": "HotelRoom",
"amenityFeature": [
{
"@type": "LocationFeatureSpecification",
"name": "Minibar",
"value": true
},
{
"@type": "LocationFeatureSpecification",
"name": "Smoking",
"value": false
}
],
"offers": {
"@type": ["Offer", "LodgingReservation"],
"identifier": "rate-plan-id-of-member-rate",
"checkinTime": "2023-03-10 15:00:00",
"checkoutTime": "2023-03-16 10:00:00",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": 1222.74,
"priceCurrency": "USD"
}
}
}
}