การอ้างอิง Structured Data ของราคาโรงแรม

หน้านี้มีข้อกำหนดทางเทคนิคและการอ้างอิงคำศัพท์สำหรับมาร์กอัป Structured Data ของโรงแรมใน Schema.org

ภาพรวม

Structured Data ของราคาโรงแรมมีรูปแบบมาตรฐานที่คอมพิวเตอร์อ่านได้เพื่อ อธิบาย ตรวจสอบ และแสดงราคาโรงแรมที่แสดงในเว็บไซต์ โดยไม่คำนึงถึงเลย์เอาต์ภาพ ซึ่งรวมถึงราคาฐาน ราคา ข้อกำหนดของห้องพัก ค่าธรรมเนียมและภาษีที่แยกรายการ และนโยบายการจอง

Google ขอแนะนำให้คุณใส่คำอธิบายประกอบในหน้าเว็บด้วย Structured Data มาตรฐานที่ Schema.org จัดทำขึ้น เพื่อดึงข้อมูลราคาจากหน้าเว็บได้อย่างถูกต้อง

Structured Data มาตรฐานช่วยให้สามารถปรับขนาดการตรวจสอบความถูกต้องของราคาได้โดย การปรับปรุงความน่าเชื่อถือของ Crawler, เพิ่มจำนวนการตรวจสอบความถูกต้องของราคา, การแก้ไขข้อบกพร่องโดยตรงเกี่ยวกับปัญหาความถูกต้องของราคา และการรักษาสกอร์ความถูกต้องของราคาให้สอดคล้องกัน

หากคุณเพิ่งใช้ Structured Data เป็นครั้งแรก โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับคำศัพท์และรูปแบบของ Structured Data

Google Hotels ขอแนะนำรูปแบบ Microdata โดยค่าเริ่มต้นเพื่อใส่คำอธิบายประกอบ หน้าเว็บสำหรับการตรวจสอบความถูกต้องของราคาโรงแรม รูปแบบ JSON-LD เลิกใช้งานแล้ว สำหรับการตรวจสอบความถูกต้องของราคา โปรดทราบว่าคำแนะนำนี้ใช้กับการตรวจสอบความถูกต้องของราคาโรงแรมเท่านั้น และไม่มีผลต่อการใช้งานอื่นๆ ของ Structured Data ใน Google (เช่น ผลการค้นหาที่เป็นริชมีเดียของ Google Search) ดูข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบที่รองรับสำหรับฟีเจอร์ Search ทั่วไปได้ที่รูปแบบที่รองรับ เอกสารประกอบนี้มีเนื้อหาอ้างอิงโดยละเอียดที่เกี่ยวข้องกับการใช้ Structured Data ในโรงแรมโดยเฉพาะ

ระบบจะใช้ Structured Data Hotel เพื่อใส่คำอธิบายประกอบฟิลด์เฉพาะโรงแรมในหน้าเว็บ Hotel Structured Data มีพร็อพเพอร์ตี้ต่อไปนี้

ระบบจะใช้ Structured Data HotelRoom เพื่อใส่คำอธิบายประกอบฟิลด์ที่เฉพาะเจาะจงห้องในหน้าเว็บ

HotelRoom Structured Data มีพร็อพเพอร์ตี้ต่อไปนี้

แอตทริบิวต์การนำทางใช้เพื่ออธิบายองค์ประกอบแบบอินเทอร์แอกทีฟและสถานะหน้าเว็บ ต่อ Crawler ดูข้อมูลเพิ่มเติมได้ที่ การติดแท็กการนำทาง

Structured Data ของโรงแรม

พร็อพเพอร์ตี้ต่อไปนี้ใช้กับเอนทิตีโรงแรม

พร็อพเพอร์ตี้ name และ address

ใช้พร็อพเพอร์ตี้ name และ address เพื่อใส่คำอธิบายประกอบชื่อและ สถานที่ตั้งของโรงแรม พร็อพเพอร์ตี้ name และ 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."
    },

ไวยากรณ์

พร็อพเพอร์ตี้ name และ address ใช้ไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">hotel-name</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
    <span itemprop="streetAddress">1234 Main St.</span>,
    <span itemprop="addressLocality">City Name</span>,
    <span itemprop="addressRegion">State Name</span>
    <span itemprop="postalCode">01234</span>
    <span itemprop="addressCountry">XX</span>
  </div>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
  </div>
</div>

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"]
    ...
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ name และ address มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
Hotel.name Required string ชื่อโรงแรม
Hotel.identifier Required string

รหัสโรงแรมของพาร์ทเนอร์

ตัวระบุต้องเป็นสตริงที่ไม่ซ้ำกันต่อโรงแรม และควรตรงกับสตริงที่ใช้ในฟีดราคาอย่างแน่นอน

Hotel.address Optional PostalAddress ที่อยู่หรือตำแหน่งของโรงแรม

ตัวอย่างชื่อและที่อยู่

ต่อไปนี้เป็นตัวอย่างพื้นฐานของการเพิ่มคำอธิบายประกอบ name และ address

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <h1 itemprop="name">Mountain Hotel</h1>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
    <span itemprop="streetAddress">Technikerstrasse 21</span>,
    <span itemprop="addressLocality">Innsbruck</span>,
    <span itemprop="addressRegion">Tyrol</span>
    <span itemprop="postalCode">6020</span>
    <span itemprop="addressCountry">AT</span>
  </div>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
    }
  }
}

ที่พัก makesOffer แห่ง

ใช้คำอธิบายประกอบ makesOffer เพื่อมาร์กอัป แผนการเดินทางของโรงแรม

  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "availability": "https://schema.org/InStock",
    ...
  }

ไวยากรณ์

พร็อพเพอร์ตี้ makesOffer ใช้ไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">hotel-name</span>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="YYYY-MM-DDTHH:mm:ss">YYYY-MM-DD[THH:mm:ss]</time>
    Check-out: <time itemprop="checkoutTime" content="YYYY-MM-DDTHH:mm:ss">YYYY-MM-DD[THH:mm:ss]</time>
    <meta itemprop="availability" content="https://schema.org/InStock"/>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      ...
    </div>
  </div>
</div>

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": { ... }
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ makesOffer มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
makesOffer Required Offer and LodgingReservation

ข้อเสนอของโรงแรมสำหรับแผนการเดินทางที่ระบุ

พร็อพเพอร์ตี้ makesOffer อาจมีอาร์เรย์ของข้อเสนอ

LodgingReservation.checkinTime Required DateTime

เวลาเช็คอินในเขตเวลาของผู้ใช้ หากไม่ได้ระบุเขตเวลาของคุณ ระบบจะพิจารณาเขตเวลาของโรงแรม

LodgingReservation.checkoutTime Required DateTime

เวลาเช็คเอาต์ในเขตเวลาของผู้ใช้ หากไม่ได้ระบุเขตเวลาของคุณ ระบบจะพิจารณาเขตเวลาของโรงแรม

ตัวอย่าง makesOffer

ต่อไปนี้เป็นตัวอย่างพื้นฐานในการใส่คำอธิบายประกอบข้อเสนอโรงแรม คุณระบุข้อเสนอหลายรายการสำหรับแผนการเดินทางได้ แต่ควรระบุราคาที่ Google แสดงก่อน แล้วตามด้วยราคาอื่นๆ จำนวนเงินของราคา ที่ระบุรวมภาษีที่เกี่ยวข้องทั้งหมดแล้ว

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">Mountain Hotel</span>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
    </div>
  </div>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1200.74</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
      }
    }
  ]
}

ที่พัก Hotel priceSpecification แห่ง

พร็อพเพอร์ตี้นี้ใช้เพื่อประกอบข้อมูลราคาสำหรับโรงแรมหรือห้องพักโรงแรม คุณต้องระบุพร็อพเพอร์ตี้เพิ่มเติมอีก 2 รายการเพื่อใส่คำอธิบายประกอบราคาและภาษี คุณควรใช้ CompoundPriceSpecification เพื่อระบุข้อมูลราคาโดยรวม เช่น อัตราฐาน ภาษี และส่วนลด ใช้ UnitPriceSpecification เพื่อระบุภาษีเพิ่มเติมหรือค่าธรรมเนียมประเภทพิเศษ เช่น ResortFee, GenericTax และ ServiceFee priceSpecification พร็อพเพอร์ตี้รวมอยู่กับพร็อพเพอร์ตี้ Offer

  {
    ...
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": "float",
      "priceCurrency": "currency",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": "float",
          "priceCurrency": "currency"
        },
        ...
      ]
    }
  }

ไวยากรณ์

พร็อพเพอร์ตี้ Hotel priceSpecification ใช้ไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">hotel-name</span>
  ...
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name"></span>
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
        <meta itemprop="priceComponentType" content="GenericTax"/>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Discount</span>
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
        <meta itemprop="priceComponentType" content="Discount"/>
      </div>
    </div>
  </div>
</div>

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"
        }
      ]
    }
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ hotel priceSpecification มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
Hotel.Offer.priceSpecification.price Required float

ราคารวมของโรงแรม ซึ่งรวมภาษีและค่าธรรมเนียม

คุณควรใส่คำอธิบายประกอบราคาของ Google ในหน้า Landing Page พร้อมกับ รายละเอียดราคาที่สมบูรณ์เสมอ การใส่คำอธิบายประกอบรายละเอียดราคาช่วยให้คุณทำการตรวจสอบความถูกต้องของราคาได้ Google ยอมรับทั้งราคาที่ระดับโรงแรมและระดับห้องพัก

Hotel.Offer.priceSpecification.priceCurrency Required currency รหัสสกุลเงิน 3 ตัวอักษรสำหรับราคาที่ระบุ เช่น "USD"
Hotel.Offer.priceSpecification.priceComponent Optional UnitPriceSpecification[]

รายละเอียดราคารวม รวมถึงภาษีและค่าธรรมเนียมสำหรับโรงแรม Structured Data ของราคาแบ่งออกเป็น 2 ประเภท ได้แก่

  • CompoundPriceSpecification แสดงรายละเอียดราคาเพื่อ รวมข้อมูลต่อไปนี้

    • ราคาฐาน: ราคาพื้นฐานต่อคืน

    • ภาษีต่อการเข้าพัก: ราคาต่อคืนรวมภาษี

    • ค่าธรรมเนียมต่อผู้เข้าพัก: ราคาต่อคืนต่อการเข้าพัก

    • ส่วนลด: จำนวนเงินที่หัก

  • UnitPriceSpecification ใช้เพื่อระบุประเภทค่าใช้จ่าย คุณควรรวมค่า PriceComponentTypeEnumeration เพื่อระบุค่าใช้จ่ายเพิ่มเติม

    ค่าสำหรับ PriceComponentTypeEnumeration มีดังนี้

    • Discount: ส่วนลดทั่วไปสำหรับ ราคา

    • ResortFee: เป็นค่าใช้จ่ายเพิ่มเติมที่ต้องชำระที่โรงแรม ซึ่งอาจแตกต่างกันไปตามประเภทที่พัก

    • GenericTax: เป็นภาษีเบ็ดเตล็ดเพิ่มเติม

    • ServiceFee: เป็นค่าธรรมเนียมเพิ่มเติมที่ช่องทางการจองเรียกเก็บ

    • TransferFee: เป็นค่าธรรมเนียมที่ต้องชำระสำหรับการ เดินทางไปยังโรงแรม ซึ่งโรงแรมหรือช่องทางการจองเป็นผู้เรียกเก็บ

คุณต้องตั้งค่าในพร็อพเพอร์ตี้ priceComponentType คุณต้องระบุค่าทั้งหมดหากเลือกใส่ UnitPriceSpecification และต้องระบุในพร็อพเพอร์ตี้ UnitPriceSpecification

Hotel.Offer.priceSpecification.priceComponent. potentialAction Optional PayAction

จุดชำระเงินของโรงแรม ขั้นตอนการชำระเงินของโรงแรมรวมถึงราคา ที่เรียกเก็บในช่วงเวลาเช็คเอาต์ในเว็บไซต์การจองและที่ โรงแรมระหว่างเช็คอิน

คุณควรใช้พร็อพเพอร์ตี้ potentialAction ซึ่งรวมอยู่ในฟิลด์ "recipient" ของ PayAction เพื่อระบุจุดชำระเงิน ดูข้อมูลเพิ่มเติมเกี่ยวกับพร็อพเพอร์ตี้ recipient ได้ที่ PayAction

Google รองรับการตั้งค่า 2 รายการต่อไปนี้สำหรับผู้รับของ PayAction

  • recipient.@type = "OnlineBusiness" หมายถึงการชำระเงิน ที่ผู้ขายออนไลน์เรียกเก็บ ณ เวลาที่จอง โดยจะเป็น การตั้งค่าเริ่มต้นหากไม่ได้ระบุ potentialAction

  • recipient.@type = "Hotel" หมายถึงการชำระเงิน ที่เรียกเก็บที่โรงแรม

ตัวอย่าง

ตัวอย่างข้อกำหนดราคาโรงแรมมีดังนี้

ราคา

ต่อไปนี้คือตัวอย่างพื้นฐานของการเพิ่ม Structured Data ของราคาลงในหน้าเว็บ คุณระบุข้อเสนอระดับโรงแรมหลายรายการได้ในพร็อพเพอร์ตี้ makesOffer

ต้องระบุประเภท PostalAddress เช่น addressCountry, postalCode, streetAddress และช่องอื่นๆ หากคุณเลือกที่จะระบุพร็อพเพอร์ตี้ address ราคาที่ Google แสดงควรระบุเป็นอันดับแรกในพร็อพเพอร์ตี้ makesOffer จำนวนเงินของราคาที่ระบุรวมภาษีที่เกี่ยวข้องทั้งหมด

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">ACME Hotel</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
    <span itemprop="streetAddress">Technikerstrasse 21</span>,
    <span itemprop="addressLocality">Innsbruck</span>,
    <span itemprop="addressRegion">Tyrol</span>
    <span itemprop="postalCode">6020</span>
    <span itemprop="addressCountry">AT</span>
  </div>

  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
    </div>
  </div>

  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1200.74</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
      }
    }
  ]
}

รายละเอียดราคา

ต่อไปนี้คือตัวอย่างพร็อพเพอร์ตี้ priceSpecification ที่มีรายละเอียดราคา คุณกำหนดอัตราฐาน ภาษี เช่น ภาษีทั่วไป และส่วนลดได้โดยใช้คอมโพเนนต์ UnitPriceSpecification อย่าลืมตั้งค่าฟิลด์ priceComponentTypeด้วยค่าที่สอดคล้องกับคอมโพเนนต์ UnitPriceSpecification

ควรกำหนดราคารวมสำหรับระยะเวลาในการเข้าพักในพร็อพเพอร์ตี้ CompoundPriceSpecification ควรระบุรายละเอียดราคาในพร็อพเพอร์ตี้ priceComponent

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <h1 itemprop="name">ACME Hotel</h1>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
    <span itemprop="streetAddress">123 Main street</span>,
    <span itemprop="addressLocality">Mountain View</span>,
    <span itemprop="addressRegion">Santa Clara</span>
    <span itemprop="postalCode">94040</span>
    <span itemprop="addressCountry">US</span>
  </div>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      Total Price: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>

      <!-- Price Components -->
      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Base Rate</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1150</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">172.74</span>
        <meta itemprop="priceComponentType" content="GenericTax" />
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Discount</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">-100</span>
        <meta itemprop="priceComponentType" content="Discount" />
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
        }
      ]
    }
  }
}

จุดชำระเงิน

ต่อไปนี้เป็นตัวอย่างการระบุ potentialAction ในการใช้ประเภทผู้รับของ PayAction

ราคารวมของแพ็กเกจคือ $1170 และเว็บไซต์ออนไลน์จะเรียกเก็บเงินบางส่วนจากราคารวม ซึ่งก็คือ $1150 ในเวลาที่จองที่ระบุโดยใช้ "@type": "OnlineBusiness" และผู้ใช้ต้องชำระเงินอีก $20 ในเวลาที่เช็คอินที่โรงแรมซึ่งระบุโดยใช้ @type": "Hotel"

คุณต้องระบุคอมโพเนนต์ potentialAction เพื่อแยกย่อย การชำระเงิน ณ เวลาที่จองและที่โรงแรม หากไม่ได้ระบุไว้ payAction จะตีความการชำระเงิน ณ เวลาที่จองเป็นวิธีการชำระเงินเริ่มต้น

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">ACME Hotel</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      Price Due: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1170</span>

      <!-- Paid Online -->
      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1150</span>
        <div itemprop="potentialAction" itemscope itemtype="https://schema.org/PayAction">
          <div itemprop="recipient" itemscope itemtype="https://schema.org/OnlineBusiness">
            <span itemprop="name">myonlinebusiness</span>
          </div>
        </div>
      </div>

      <!-- Paid at Hotel -->
      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">20</span>
        <div itemprop="potentialAction" itemscope itemtype="https://schema.org/PayAction">
          <div itemprop="recipient" itemscope itemtype="https://schema.org/Hotel">
            <span itemprop="name">The Langham, Boston</span>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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": { ... }
            }
          }
        }
      ]
    }
  }
}

ที่พัก hasMerchantReturnPolicy แห่ง

พร็อพเพอร์ตี้นี้ใช้เพื่อใส่คำอธิบายประกอบนโยบายการคืนเงินของผู้ขายในแผนการเดินทาง

    "hasMerchantReturnPolicy": {
      "@type": "MerchantReturnPolicy",
      "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
      "refundType": "https://schema.org/FullRefund",
      "merchantReturnDays": "YYYY-MM-DD[THH:mm:ss]",
      "restockingFee": 0
    }

ไวยากรณ์

hasMerchantReturnPolicy มีไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  ...
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
    <div itemprop="hasMerchantReturnPolicy" itemscope itemtype="https://schema.org/MerchantReturnPolicy">
      <link itemprop="returnPolicyCategory" href="https://schema.org/MerchantReturnFiniteReturnWindow"/>
      <link itemprop="refundType" href="https://schema.org/FullRefund"/>
      <meta itemprop="merchantReturnDays" content="YYYY-MM-DDTHH:mm:ss"/>
      <meta itemprop="restockingFee" content="0"/>
    </div>
  </div>
</div>

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
    }
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ hasMerchantReturnPolicy มีดังนี้

แอตทริบิวต์ จำเป็นหรือไม่ ประเภท คำอธิบาย
Offer.hasMerchantReturnPolicy Optional MerchantReturnPolicy

นโยบายการคืนเงินของผู้ขาย พาร์ทเนอร์ควรใช้ MerchantReturnPolicy.restockingFee เพื่อระบุนโยบายการยกเลิกที่ไม่ได้คืนเงินเต็มจำนวนสำหรับ ระยะเวลาในการเข้าพัก

หากไม่ได้ระบุ hasMerchantReturnPolicy หรือปล่อยให้ว่างไว้ ระบบจะถือว่าจำนวนเงินดังกล่าวขอเงินคืนไม่ได้ คุณระบุนโยบาย คืนเงินไม่ได้โดยใช้พร็อพเพอร์ตี้ returnPolicyCategory: MerchantReturnNotPermitted

ตัวอย่างนโยบายคืนสินค้า

ตัวอย่างพื้นฐานของ Structured Data สำหรับโรงแรมที่มีรายละเอียดห้องพักและราคารวมพร้อมภาษีและค่าธรรมเนียมมีดังนี้ ตัวอย่างนี้ระบุการเข้าพัก ที่ยกเลิกได้โดยไม่มีค่าใช้จ่ายจนถึงเวลา 23:00 น. (UTC) ของวันที่ 18 ธันวาคม 2023 พาร์ทเนอร์ควรใช้ "MerchantReturnPolicy.restockingFee" เพื่อระบุนโยบายการยกเลิก ที่ไม่ได้คืนเงินเต็มจำนวนของการเข้าพัก restockingFee ค่าเริ่มต้น คือ $0

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">ACME Hotel</span>
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
    <div itemprop="hasMerchantReturnPolicy" itemscope itemtype="https://schema.org/MerchantReturnPolicy">
      <link itemprop="returnPolicyCategory" href="https://schema.org/MerchantReturnFiniteReturnWindow"/>
      <link itemprop="refundType" href="https://schema.org/FullRefund"/>
      Cancellation Deadline: <time itemprop="merchantReturnDays" content="2023-12-18T23:00:00">2023-12-18 23:00:00</time>
      Fee: $<span itemprop="restockingFee">0</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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
    }
  }
}

ที่พัก eligibleCustomerType แห่ง

คุณใช้พร็อพเพอร์ตี้นี้เพื่อใส่คำอธิบายประกอบโปรแกรมสะสมคะแนนที่มอบให้แก่ลูกค้าที่เป็นสมาชิกของโรงแรม ได้

"eligibleCustomerType": "RewardsMember",
"priceSpecification": {
    "@type": "CompoundPriceSpecification",
    "price": "float",
    "priceCurrency": "currency"
 }

ไวยากรณ์

พร็อพเพอร์ตี้ eligibleCustomerType มีไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  ...
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <meta itemprop="eligibleCustomerType" content="RewardsMember"/>
    ...
  </div>
</div>

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": { ... }
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ eligibleCustomerType มีดังนี้

แอตทริบิวต์ จำเป็นหรือไม่ ประเภท คำอธิบาย
Offer.eligibleCustomerType Optional BusinessEntityType

โปรแกรมสะสมคะแนนหรือรางวัลสำหรับสมาชิกที่เสนอให้แก่ลูกค้า

หน้าโรงแรมหลายหน้าแสดงราคาสมาชิกพร้อมกับราคาสำหรับบุคคลทั่วไป เพื่อกระตุ้นให้ผู้ใช้ลงชื่อสมัครใช้โปรแกรมสะสมคะแนน คุณระบุราคาที่จำกัด สำหรับกลุ่มเป้าหมายที่เฉพาะเจาะจง เช่น ราคาสำหรับสมาชิก ได้โดยการตั้งค่าพร็อพเพอร์ตี้ Offer.eligibleCustomerType

ตัวอย่าง

ตัวอย่างราคาสำหรับสมาชิกโปรแกรมสะสมคะแนนมีดังนี้

ราคาสำหรับสมาชิก

ต่อไปนี้คือตัวอย่างพื้นฐานของการระบุราคาสำหรับสมาชิกหรือราคาที่จำกัด สำหรับโปรแกรมสะสมคะแนน ลูกค้าเป็น "สมาชิกโปรแกรมสะสมคะแนน" ของโรงแรม

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">ACME Hotel</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
    <!-- Address details -->
  </div>

  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <span itemprop="name">RewardsMember</span>
    <meta itemprop="eligibleCustomerType" content="RewardsMember"/>

    Check-in: <time itemprop="checkinTime" content="2023-12-15T16:00:00">Dec 15, 2023 4:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-12-20T11:00:00">Dec 20, 2023 11:00 AM</time>

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      Total: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1342.74</span>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Base rate</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1069.98</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">172.74</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">ResortFee</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">100</span>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
        }
      ]
    }
  }
}

ราคาสำหรับสมาชิกและราคาปกติ

นี่คือตัวอย่างของทั้งคำอธิบายประกอบราคาอัตราปกติและราคาสมาชิก โดยจะแสดงราคาสำหรับสมาชิกก่อน แล้วตามด้วยราคาปกติ

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">ACME Hotel</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
    <!-- Address details -->
  </div>

  <!-- Member Rate -->
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <span itemprop="name">RewardsMember</span>
    <meta itemprop="eligibleCustomerType" content="RewardsMember"/>

    Check-in: <time itemprop="checkinTime" content="2023-12-15T16:00:00">Dec 15, 2023 4:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-12-20T11:00:00">Dec 20, 2023 11:00 AM</time>

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      Total: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1342.74</span>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Base rate</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1069.98</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>: <span itemprop="priceCurrency" content="currency">$</span><span itemprop="price">172.74</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">ResortFee</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">100</span>
      </div>
    </div>
  </div>

  <!-- Regular Rate -->
  <div itemprop="makesOffer" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <span itemprop="name">regularRate</span>

    Check-in: <time itemprop="checkinTime" content="2023-12-15T16:00:00">Dec 15, 2023 4:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-12-20T11:00:00">Dec 20, 2023 11:00 AM</time>

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      Total: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1572.24</span>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Base rate</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1369.98</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>: <span itemprop="priceCurrency" content="currency">$</span><span itemprop="price">202.26</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">ResortFee</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">100</span>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
          }
        ]
      }
    }
  ]
}

Structured Data HotelRoom

พร็อพเพอร์ตี้ต่อไปนี้ใช้กับเอนทิตี HotelRoom

ที่พัก offers แห่ง

ระบบจะใช้คำอธิบายประกอบ offers เพื่อมาร์กอัปแผนการเดินทางของห้องพัก คุณควรใช้พร็อพเพอร์ตี้ offers สำหรับข้อกำหนด 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": {...}
}

ไวยากรณ์

พร็อพเพอร์ตี้ offers มีไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom">
  <meta itemprop="identifier" content="hotel-room-id-1234"/>
  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="YYYY-MM-DDTHH:mm:ss">YYYY-MM-DD[THH:mm:ss]</time>
    Check-out: <time itemprop="checkoutTime" content="YYYY-MM-DDTHH:mm:ss">YYYY-MM-DD[THH:mm:ss]</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
      ...
    </div>
  </div>
</div>

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",
      ...
    }
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ offers มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
offers Required Offer and LodgingReservation

ข้อกำหนดราคาห้องพักสำหรับแผนการเดินทางที่ระบุ

พร็อพเพอร์ตี้ offers อาจมีอาร์เรย์ของข้อเสนอ

LodgingReservation.checkinTime Required DateTime

เวลาเช็คอินในเขตเวลาของผู้ใช้ หากไม่ได้ระบุเขตเวลาของคุณ ระบบจะพิจารณาเขตเวลาของโรงแรม

LodgingReservation.checkoutTime Required DateTime

เวลาเช็คเอาต์ในเขตเวลาของผู้ใช้ หากไม่ได้ระบุเขตเวลาของคุณ ระบบจะพิจารณาเขตเวลาของโรงแรม

ตัวอย่าง offers

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom">
  <meta itemprop="identifier" content="hotel-room-id-1234"/>
  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <meta itemprop="identifier" content="rate-plan-id-of-member-rate"/>
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
    }
  }
}

พร็อพเพอร์ตี้ bed และ occupancy

พร็อพเพอร์ตี้ bed ใช้เพื่อใส่คำอธิบายประกอบประเภทเตียงและจำนวนเตียงที่พร้อมให้บริการในห้องพัก พร็อพเพอร์ตี้ occupancy ใช้เพื่อใส่คำอธิบายประกอบจำนวน แขกในห้อง คุณระบุพร็อพเพอร์ตี้ bed และ occupancy ได้โดยใช้พร็อพเพอร์ตี้ 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"
  }
}

ไวยากรณ์

พร็อพเพอร์ตี้ bed และ occupancy มีไวยากรณ์ดังนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">hotel-name</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemprop="containsPlace" itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
    <span itemprop="name">room-name</span>
    <meta itemprop="identifier" content="hotel-room-id-1234"/>

    <!-- Bed Details -->
    <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
      <span itemprop="numberOfBeds">integer</span>
      <span itemprop="typeOfBed">KING</span>
    </div>

    <!-- Occupancy -->
    <div itemprop="occupancy" itemscope itemtype="https://schema.org/QuantitativeValue">
      Occupancy: <span itemprop="value">integer</span>
    </div>

    <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
      ...
    </div>
  </div>
</div>

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"
        },
        ...
      }
    }
  }
}

คุณตั้งค่าพร็อพเพอร์ตี้ bed และ occupancy ได้โดยใช้พร็อพเพอร์ตี้ HotelRoom เท่านั้น คุณสามารถรวมข้อมูลเฉพาะห้องพัก ซึ่งรวมถึงราคาในระดับห้องพัก ไปยังพร็อพเพอร์ตี้ Hotel ผ่านพร็อพเพอร์ตี้ containsPlace ได้ โปรดดูHotel และHotelRoom ตัวอย่างข้อกำหนด

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ bed และ occupancy มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
HotelRoom.bed Optional (Recommended) bed

ประเภทเตียงที่รวมอยู่ในที่พักและจำนวนผู้เข้าพักในห้อง

ค่าที่รองรับมีดังนี้

  • CALIFORNIA_KING
  • KING
  • QUEEN
  • FULL
  • DOUBLE
  • SEMI_DOUBLE
  • SINGLE
HotelRoom.occupancy Optional (Recommended) QuantitativeValue

จำนวนแขกในห้องพักของโรงแรม ประเภทการเข้าพักคือ QuantitativeValue

การเข้าพักเป็นพร็อพเพอร์ตี้ที่ชัดเจนของ HotelRoom ไม่ใช่ของ Offer ที่เฉพาะเจาะจง คุณควรติดแท็กราคาสำหรับการเข้าพักที่ขอเท่านั้น

containsPlace Optional (Recommended) LocationFeatureSpecification

โดยใช้เพื่อใส่คำอธิบายประกอบอัตราที่ระดับห้องพักซึ่งเชื่อมโยงกับห้องพักที่เฉพาะเจาะจง นอกจากนี้ ยังใช้เพื่อระบุสิ่งอำนวยความสะดวกในห้องได้ด้วย

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ containsPlace ในพร็อพเพอร์ตี้ amenityFeature

ตัวอย่าง

ตัวอย่างข้อกำหนดเตียงและอัตราการเข้าพักมีดังนี้

ตัวอย่าง HotelRoom

ตัวอย่างต่อไปนี้เป็นตัวอย่างพื้นฐานของเตียงและการเข้าพักสำหรับข้อกำหนดของห้องพัก

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  <meta itemprop="identifier" content="hotel-room-id-1234"/>
  <span itemprop="name">Deluxe Room, 1 King Bed</span>

  <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
    <span itemprop="numberOfBeds">1</span>
    <span itemprop="typeOfBed">KING</span>
  </div>
  <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
    <span itemprop="numberOfBeds">1</span>
    <span itemprop="typeOfBed">SINGLE</span>
  </div>

  <div itemprop="occupancy" itemscope itemtype="https://schema.org/QuantitativeValue">
    Occupancy: <span itemprop="value">2</span>
  </div>

  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <meta itemprop="identifier" content="rate-plan-id-of-member-rate"/>
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
    }
  }
}

ตัวอย่าง Hotel และ HotelRoom

ตัวอย่างต่อไปนี้แสดงการใส่คำอธิบายประกอบพร็อพเพอร์ตี้ Hotel และ HotelRoom พร้อมกับ bed, occupancy และ priceSpecification

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">hotel-name</span>
  <meta itemprop="identifier" content="hotel-id-1234"/>

  <div itemprop="containsPlace" itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
    <span itemprop="name">Deluxe Room, 1 King Bed</span>
    <meta itemprop="identifier" content="hotel-room-id"/>

    <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
      <span itemprop="numberOfBeds">1</span>
      <span itemprop="typeOfBed">KING</span>
    </div>

    <div itemprop="occupancy" itemscope itemtype="https://schema.org/QuantitativeValue">
      Occupancy: <span itemprop="value">2</span>
    </div>

    <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
      <span itemprop="name">Minibar</span>
      <meta itemprop="value" content="true"/>
    </div>

    <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
      <meta itemprop="identifier" content="rate-plan-id-of-member-rate"/>
      Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
      Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
      <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
      }
    }
  }
}

ที่พัก HotelRoom priceSpecification แห่ง

ข้อมูลจำเพาะของราคาห้องพักโรงแรมจะคล้ายกับข้อมูลจำเพาะของราคาโรงแรม โดยความแตกต่างคือราคาห้องพักจะระบุโดยใช้พร็อพเพอร์ตี้ Product.offers แทนพร็อพเพอร์ตี้ Hotel.makesOffer

"priceSpecification": {
  "@type": "CompoundPriceSpecification",
  "price": "float",
  "priceCurrency": "currency",
  "priceComponent": {
    "@type": "UnitPriceSpecification",
    "name": "GenericTax",
    "price": "float",
    "priceCurrency": "currency"
  }
  ...
}

ไวยากรณ์

พร็อพเพอร์ตี้ priceSpecification สำหรับห้องพักของโรงแรมมีไวยากรณ์ดังนี้

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  ...
  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name"></span>
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
        <meta itemprop="priceComponentType" content="GenericTax"/>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Discount</span>
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">float</span>
        <meta itemprop="priceComponentType" content="Discount"/>
      </div>
    </div>
  </div>
</div>

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"
        }
      ]
    }
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ HotelRoom priceSpecification มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
Hotel.Offer.priceSpecification.price Required float

ราคาต่อห้องรวมภาษีและค่าธรรมเนียมสำหรับProduct

คุณควรใส่คำอธิบายประกอบราคาของ Google ในหน้า Landing Page พร้อมกับ รายละเอียดราคาที่สมบูรณ์เสมอ การใส่คำอธิบายประกอบรายละเอียดราคาช่วยให้คุณทำการตรวจสอบความถูกต้องของราคาได้ Google ยอมรับทั้งราคาที่ระดับโรงแรมและระดับห้องพัก

Hotel.Offer.priceSpecification.priceCurrency Required currency รหัสสกุลเงิน 3 ตัวอักษรสำหรับราคาที่ระบุ เช่น "USD"
Hotel.Offer.priceSpecification.priceComponent Optional UnitPriceSpecification[]

การแจกแจงราคารวมซึ่งรวมภาษีและค่าธรรมเนียมสำหรับห้องพักโรงแรมและอัตราการเข้าพักพร้อมข้อเสนอที่ลิงก์กับ HotelRoom และ Product Structured Data ของราคาแบ่งออกเป็น 2 ประเภท ได้แก่

  • CompoundPriceSpecification แสดงรายละเอียดราคาเพื่อ รวมข้อมูลต่อไปนี้

    • ราคาฐาน: ราคาพื้นฐานต่อคืน

    • ภาษีต่อการเข้าพัก: ราคาต่อคืนรวมภาษี

    • ค่าธรรมเนียมต่อผู้เข้าพัก: ราคาต่อคืนต่อการเข้าพัก

      occupancy เป็นพร็อพเพอร์ตี้ที่ชัดเจนของ HotelRoom ไม่ใช่สำหรับ Offer ที่เฉพาะเจาะจง คุณควรติดแท็กราคาสำหรับการเข้าพักที่ขอเท่านั้น

    • ส่วนลด: จำนวนเงินที่หัก

  • UnitPriceSpecification ใช้เพื่อระบุประเภทค่าใช้จ่าย คุณควรรวมค่า PriceComponentTypeEnumeration เพื่อระบุค่าใช้จ่ายเพิ่มเติม

    ค่าสำหรับ PriceComponentTypeEnumeration มีดังนี้

    • Discount: ส่วนลดทั่วไปสำหรับ ราคา

    • ResortFee: เป็นค่าใช้จ่ายเพิ่มเติมที่ต้องชำระที่โรงแรม ซึ่งอาจแตกต่างกันไปตามประเภทที่พัก

    • GenericTax: เป็นภาษีเบ็ดเตล็ดเพิ่มเติม

    • ServiceFee: เป็นค่าธรรมเนียมเพิ่มเติมที่ช่องทางการจองเรียกเก็บ

    คุณต้องตั้งค่าในพร็อพเพอร์ตี้ name ของ UnitPriceSpecification คุณต้องระบุค่าทั้งหมดหากเลือกที่จะรวมรายละเอียดราคา และต้องระบุค่าในคอมโพเนนต์ UnitPriceSpecification

ตัวอย่าง

ตัวอย่างHotelRoomข้อกำหนดราคา

ตัวอย่างราคารวมของห้องพัก

ตัวอย่างพื้นฐานต่อไปนี้แสดงการกำหนดราคารวมสำหรับระยะเวลาเข้าพักและราคาต่ออัตราการเข้าพัก

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  <span itemprop="name">Deluxe Room King, 1 Single Bed</span>
  <meta itemprop="identifier" content="hotel-room-id-1234"/>

  <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
    <span itemprop="numberOfBeds">1</span>
    <span itemprop="typeOfBed">KING</span>
  </div>
  <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
    <span itemprop="numberOfBeds">1</span>
    <span itemprop="typeOfBed">SINGLE</span>
  </div>

  <div itemprop="occupancy" itemscope itemtype="https://schema.org/QuantitativeValue">
    Occupancy: <span itemprop="value">2</span>
  </div>

  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1232.74</span>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
    }
  }
}

ตัวอย่างรายละเอียดราคาห้องพัก

ตัวอย่างต่อไปนี้เป็นตัวอย่างราคาต่อห้องหรือแพ็กเกจ การแจกแจงราคา จะกำหนดไว้สำหรับประเภทห้องพัก เช่น ห้องพัก Deluxe และประเภท bed และ occupancy เช่น เตียง KING และ SINGLE และอัตราการเข้าพัก 2 ท่าน

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  <span itemprop="name">Deluxe Room King, 1 Single Bed</span>
  <meta itemprop="identifier" content="hotel-room-id-1234"/>

  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <meta itemprop="identifier" content="rate-plan-id-of-member-rate"/>
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>

    <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
      <span itemprop="numberOfBeds">1</span>
      <span itemprop="typeOfBed">KING</span>
    </div>
    <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
      <span itemprop="numberOfBeds">1</span>
      <span itemprop="typeOfBed">SINGLE</span>
    </div>

    <div itemprop="occupancy" itemscope itemtype="https://schema.org/QuantitativeValue">
      Occupancy: <span itemprop="value">2</span>
    </div>

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      Total: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Base rate</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1150</span>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">GenericTax</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">172.74</span>
        <meta itemprop="priceComponentType" content="GenericTax"/>
      </div>

      <div itemprop="priceComponent" itemscope itemtype="https://schema.org/UnitPriceSpecification">
        <span itemprop="name">Discount</span>: <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">-100</span>
        <meta itemprop="priceComponentType" content="Discount"/>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
        }
      ]
    }
  }
}

ที่พัก includesObject แห่ง

พร็อพเพอร์ตี้นี้ใช้เพื่อประกอบคำอธิบายประกอบบริการเฉพาะอัตราที่ระบุไว้ในโรงแรม หรือห้องพัก เช่น ตัวเลือกอาหารและบริการรับจอดรถ คุณใส่คำอธิบายประกอบ includesObjectในพร็อพเพอร์ตี้ Hotel หรือ HotelRoom ก็ได้

{
  "includesObject": [
    {
      "@type": "TypeAndQuantityNode",
      "typeOfGood": {
        "@type": "Service",
        "name": "Valet"
      }
    },
    {
      "@type": "TypeAndQuantityNode",
      "amountOfThisGood": "float",
      "unitText": "currency",
      "typeOfGood": {
        "@type": "FoodService",
        "name": "MealCredit"
      }
    }
  ]
}

ไวยากรณ์

includesObject มีไวยากรณ์ต่อไปนี้สำหรับบริการที่เฉพาะเจาะจงอัตรา ซึ่งพร้อมให้บริการในห้อง

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  ...
  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
    <div itemprop="includesObject" itemscope itemtype="https://schema.org/TypeAndQuantityNode">
      <div itemprop="typeOfGood" itemscope itemtype="https://schema.org/Service">
        <span itemprop="name">Valet</span>
      </div>
    </div>

    <div itemprop="includesObject" itemscope itemtype="https://schema.org/TypeAndQuantityNode">
      <meta itemprop="amountOfThisGood" content="float"/>
      <meta itemprop="unitText" content="currency"/>
      <div itemprop="typeOfGood" itemscope itemtype="https://schema.org/FoodService">
        <span itemprop="name">MealCredit</span>
      </div>
    </div>
  </div>
</div>

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"
        }
      }
    ]
  }
}

พร็อพเพอร์ตี้

includesObject มีพร็อพเพอร์ตี้ต่อไปนี้

แอตทริบิวต์ จำเป็นหรือไม่ ประเภท คำอธิบาย
Offer.includesObject Optional TypeAndQuantityNode

บริการที่มีให้ในโรงแรมหรือห้องพัก

ฟีเจอร์เฉพาะอัตราจะรวมอยู่ในพร็อพเพอร์ตี้ includesObject ควรใช้ฟิลด์ชื่อใน "TypeAndQuantityNode.typeOfGood" เพื่อระบุ ประเภทของบริการ เช่น บริการรับส่งหรือบริการอาหาร

นอกจากนี้ ข้อเสนอระดับฐานอาจมีฟีเจอร์เฉพาะอัตรา หรืออาจระบุเป็นส่วนเสริมโดยมีค่าใช้จ่ายเพิ่มเติม

includesObject ต้องมีค่าประเภท TypeAndQuantityNode ดังนี้

  • BreakfastIncluded
  • DinnerIncluded
  • Valet
  • MealCredit

ตัวอย่าง includesObject

ต่อไปนี้เป็นตัวอย่างพื้นฐานของฟีเจอร์เฉพาะอัตราสำหรับบริการจอดรถและบริการอาหาร ควรระบุฟีเจอร์เฉพาะอัตราด้วยพร็อพเพอร์ตี้ Offer.includesObject ควรใช้ฟิลด์ชื่อใน TypeAndQuantityNode.typeOfGood เพื่อระบุประเภทของ บริการ

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  <span itemprop="name">Deluxe Room, 1 King Bed</span>
  <meta itemprop="identifier" content="hotel-room-id-1234"/>

  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    <meta itemprop="identifier" content="rate-plan-id-of-member-rate"/>
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
    </div>

    <!-- Included Services -->
    <div itemprop="includesObject" itemscope itemtype="https://schema.org/TypeAndQuantityNode">
      <div itemprop="typeOfGood" itemscope itemtype="https://schema.org/Service">
        <span itemprop="name">Valet</span>
      </div>
    </div>

    <div itemprop="includesObject" itemscope itemtype="https://schema.org/TypeAndQuantityNode">
      <meta itemprop="amountOfThisGood" content="50"/>
      <meta itemprop="unitText" content="USD"/>
      <div itemprop="typeOfGood" itemscope itemtype="https://schema.org/FoodService">
        <span itemprop="name">MealCredit</span>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
        }
      }
    ]
  }
}

ที่พัก availability แห่ง

พร็อพเพอร์ตี้ offer.availability ใช้เพื่อใส่คำอธิบายประกอบแผนการเดินทางที่ห้องพักโรงแรมขายหมด

"offers": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "availability": "https://schema.org/SoldOut"
}

ไวยากรณ์

พร็อพเพอร์ตี้ availability มีไวยากรณ์ต่อไปนี้

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  ...
  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    ...
    <meta itemprop="availability" content="https://schema.org/SoldOut"/>
    Sold Out
  </div>
</div>

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"
  }
}

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ availability มีดังนี้

แอตทริบิวต์ จำเป็นหรือไม่ ประเภท คำอธิบาย
Offer.availability Optional ItemAvailability

ความพร้อมให้บริการของโรงแรมหรือห้องพัก

ระบบดึงข้อมูลอัตราจาก schema.org/Offer และไม่ได้สร้างข้อมูลอัตรา โดยใช้ schema.org/Hotel หรือ schema.org/HotelRoom ซึ่งหมายความว่าแม้แผนการเดินทางจะขายหมดแล้วก็ต้องมีข้อเสนอ

ข้อเสนอที่ไม่มี priceSpecification จะถือว่า ไม่พร้อมใช้งาน ข้อเสนอที่ใช้ไม่ได้ควรระบุเป็น "Offer.availability= https://schema.org/SoldOut"

คุณไม่จำเป็นต้องระบุ Offer.availability หากมีการใส่คำอธิบายประกอบข้อเสนอด้วย priceSpecification. ที่ถูกต้อง

ตัวอย่าง availability

ตัวอย่างต่อไปนี้เป็นตัวอย่างพื้นฐานที่แสดงความไม่พร้อมให้บริการของห้องพักในโรงแรม คุณควรระบุประเภทเตียง จำนวนเตียง และรายละเอียดอัตราการเข้าพัก สำหรับห้องพักที่ระบุ

Microdata

<div itemscope itemtype="https://schema.org/HotelRoom https://schema.org/Product">
  <span itemprop="name">Deluxe Room, 1 King Bed</span>
  <meta itemprop="identifier" content="hotel-room-id-1234"/>

  <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
    <span itemprop="numberOfBeds">1</span>
    <span itemprop="typeOfBed">KING</span>
  </div>
  <div itemprop="bed" itemscope itemtype="https://schema.org/BedDetails">
    <span itemprop="numberOfBeds">1</span>
    <span itemprop="typeOfBed">SINGLE</span>
  </div>

  <div itemprop="occupancy" itemscope itemtype="https://schema.org/QuantitativeValue">
    Occupancy: <span itemprop="value">2</span>
  </div>

  <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
    Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
    Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
    <meta itemprop="availability" content="https://schema.org/SoldOut"/>
    Sold Out

    <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
      <!-- Price Specification details -->
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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": {...}
  }
}

ที่พัก amenityFeature แห่ง

คุณระบุสิ่งอำนวยความสะดวกได้ในประเภท Hotel หรือ HotelRoom โดยใช้พร็อพเพอร์ตี้ amenityFeature คุณควรใช้พร็อพเพอร์ตี้ containsPlace เพื่อระบุสิ่งอำนวยความสะดวกที่มีในห้อง

{
  "@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
      }
    ]
  }
}

ไวยากรณ์

พร็อพเพอร์ตี้ amenityFeature และ containsPlace มีไวยากรณ์ดังนี้

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  ...
  <!-- Hotel Amenity -->
  <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
    <span itemprop="name">HotTub</span>
    <div itemprop="hoursAvailable" itemscope itemtype="https://schema.org/OpeningHoursSpecification">
      <time itemprop="opens" content="HH:mm:ss">HH:mm:ss</time>
      <time itemprop="closes" content="HH:mm:ss">HH:mm:ss</time>
    </div>
  </div>

  <div itemprop="containsPlace" itemscope itemtype="https://schema.org/HotelRoom">
    <!-- Room Amenity -->
    <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
      <span itemprop="name">Minibar</span>
      <meta itemprop="value" content="boolean"/>
    </div>
  </div>
</div>

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"
    }
  }
}

สิ่งอำนวยความสะดวก

อนุญาตให้ใช้สิ่งอำนวยความสะดวกต่อไปนี้และกำหนดไว้ในพร็อพเพอร์ตี้ name

แอตทริบิวต์ จำเป็นหรือไม่ ประเภท คำอธิบาย
amenityFeature.AC Optional boolean ที่พักมีเครื่องปรับอากาศหรือไม่
amenityFeature.AirportShuttle Optional boolean ที่พักมีบริการรับส่งจากสนามบินหรืออาคารผู้โดยสารอื่นๆ หรือไม่
amenityFeature.Balcony Optional boolean ที่พักมีระเบียงหรือไม่
amenityFeature.BeachAccess Optional boolean ที่พักมีทางเข้าถึงชายหาดสาธารณะที่อยู่ใกล้กับที่พักหรือไม่
amenityFeature.ChildFriendly Optional boolean ที่พักเหมาะสำหรับเด็กหรือไม่
amenityFeature.Crib Optional boolean ที่พักมีเตียงเด็กหรือไม่
amenityFeature.Elevator Optional boolean ที่พักมีลิฟต์หรือไม่
amenityFeature.FirePlace Optional boolean ที่พักมีเตาผิงหรือไม่
amenityFeature.FreeBreakfast Optional boolean ที่พักรวมอาหารเช้าฟรีสำหรับผู้เข้าพักทุกคนหรือไม่ ใช้ ฟีเจอร์ราคาเพื่อระบุว่ารวมอาหารเช้าเฉพาะแพ็กเกจราคาที่เฉพาะเจาะจง หรือไม่
amenityFeature.GymFitnessEquipment Optional boolean ที่พักมียิมหรืออุปกรณ์ฟิตเนสหรือไม่
amenityFeature.Heating Optional boolean ที่พักมีระบบทำความร้อนหรือไม่
amenityFeature.HotTub Optional boolean ที่พักมีอ่างน้ำร้อนหรือไม่
amenityFeature.InstantBookable Optional boolean ที่พักพร้อมให้จองทันทีผ่านขั้นตอนการชำระเงินหรือไม่ หรือต้องรอการอนุมัติก่อน
amenityFeature.IroningBoard Optional boolean ที่พักมีที่รองรีดผ้าหรือไม่
amenityFeature.Kitchen Optional boolean ที่พักมีห้องครัวหรือไม่
amenityFeature.Microwave Optional boolean ที่พักมีไมโครเวฟหรือไม่
amenityFeature.OpenAirBath(Hotels only) Optional boolean ที่พักมีห้องอาบน้ำแบบเปิดโล่งหรือไม่ หากระบุ ที่ระดับห้องพัก อ่างอาบน้ำควรเป็นแบบส่วนตัวสำหรับผู้เข้าพักในห้องเท่านั้น
amenityFeature.OutdoorGrill Optional boolean ที่พักมีเตาปิ้งย่างหรือไม่
amenityFeature.OvenStove Optional boolean ที่พักมีเตาอบหรือไม่
amenityFeature.Patio Optional boolean ที่พักมีเฉลียงหรือไม่
amenityFeature.Pool Optional boolean ที่พักมีสระว่ายน้ำหรือไม่
amenityFeature.PrivateBeachAccess Optional boolean ที่พักมีทางเฉพาะสำหรับเข้าถึงชายหาดส่วนตัวหรือไม่
amenityFeature.SelfCheckinCheckout Optional boolean ที่พักรองรับการเช็คอินและเช็คเอาต์ด้วยตนเองหรือไม่
amenityFeature.WasherDryer Optional boolean ที่พักมีอุปกรณ์ซักรีดหรือไม่
amenityFeature.Wifi Optional boolean ที่พักมี Wi-Fi หรือไม่
amenityFeature.Smoking Optional boolean ที่พักอนุญาตให้สูบบุหรี่หรือไม่
amenityFeature.InternetType Optional Enum

ประเภทอินเทอร์เน็ตที่พร้อมใช้งานในที่พัก

ค่าที่รองรับมีดังนี้

  • FREE
  • PAID
  • NONE
amenityFeature.ParkingType Optional Enum

ประเภทที่จอดรถในที่พัก

ค่าที่รองรับมีดังนี้

  • FREE
  • PAID
  • NONE
amenityFeature.PoolType Optional Enum

ประเภทสระว่ายน้ำในที่พัก

ค่าที่รองรับมีดังนี้

  • INDOOR
  • OUTDOOR
  • NONE
amenityFeature.RoomStyle Optional Enum

ระบุว่าห้องพักมีการออกแบบสไตล์ญี่ปุ่นหรือไม่

ค่าที่รองรับมีดังนี้

  • WESTERN
  • JAPANESE
  • JAPANESE_WESTERN
amenityFeature.LicenseNum Required string

หมายเลขใบอนุญาตของธุรกิจที่จะแสดงในที่พักในบางภูมิภาคของโลก ซึ่งอาจซ้ำกันได้ และหากมีใบอนุญาตหลายใบ เราขอแนะนำให้ใส่เจ้าของหรือหน่วยงานที่ออกใบอนุญาต ตัวอย่างเช่น "Paris: 123456ABC"

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ amenityFeature มีดังนี้

พร็อพเพอร์ตี้ จำเป็นหรือไม่ ประเภท คำอธิบาย
amenityFeature Optional LocationFeatureSpecification

สิ่งอำนวยความสะดวกที่มีให้บริการในโรงแรมหรือห้องพัก คุณระบุได้โดยใช้พร็อพเพอร์ตี้ amenityFeature สิ่งอำนวยความสะดวกควรพร้อมให้บริการแก่แขกทุกคนในโรงแรมโดยไม่คำนึงถึงแพ็กเกจราคาที่เลือก amenityFeature จะระบุโดยใช้ค่าพร็อพเพอร์ตี้ LocationFeatureSpecification

คุณระบุสิ่งอำนวยความสะดวกได้ที่ระดับ Hotel หรือ HotelRoom

containsPlace Optional LocationFeatureSpecification

สิ่งอำนวยความสะดวกที่โรงแรมหรือห้องพักมีให้บริการแก่แขกทุกท่าน โดยระบุได้โดยใช้ amenityFeature สิ่งอำนวยความสะดวกควร พร้อมให้บริการแก่แขกทุกท่านในห้องพักของโรงแรมโดยไม่คำนึงถึงแพ็กเกจราคาที่เลือก

Hotel.containsPlace.amenityFeature คือสิ่งอำนวยความสะดวก ที่มีให้บริการในโรงแรม

HotelRoom.containsPlace.amenityFeature เป็นสิ่งอำนวยความสะดวก ที่มีให้ในห้องพัก

ตัวอย่างสิ่งอำนวยความสะดวก

ตัวอย่างพื้นฐานของโรงแรมที่มีสระว่ายน้ำเปิดตั้งแต่เวลา 10:00 น. ถึง 22:00 น. และไม่มีฟิตเนสในที่พัก ห้องพักในโรงแรมเป็นห้องปลอดบุหรี่ และมีมินิบาร์

Microdata

<div itemscope itemtype="https://schema.org/Hotel">
  <span itemprop="name">ACME Hotel</span>

  <!-- Amenities -->
  <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
    <span itemprop="name">HotTub</span>
    <div itemprop="hoursAvailable" itemscope itemtype="https://schema.org/OpeningHoursSpecification">
      Open from <time itemprop="opens" content="10:00:00">10:00</time>
      to <time itemprop="closes" content="22:00:00">22:00</time>
    </div>
  </div>

  <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
    <span itemprop="name">GymFitnessEquipment</span>:
    <meta itemprop="value" content="false"/> No
  </div>

  <div itemprop="containsPlace" itemscope itemtype="https://schema.org/HotelRoom">
    <!-- Room Amenities -->
    <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
      <span itemprop="name">Minibar</span>:
      <meta itemprop="value" content="true"/> Yes
    </div>
    <div itemprop="amenityFeature" itemscope itemtype="https://schema.org/LocationFeatureSpecification">
      <span itemprop="name">Smoking</span>:
      <meta itemprop="value" content="false"/> No
    </div>

    <div itemprop="offers" itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation">
      <meta itemprop="identifier" content="rate-plan-id-of-member-rate"/>
      Check-in: <time itemprop="checkinTime" content="2023-03-10T15:00:00">Mar 10, 2023 3:00 PM</time>
      Check-out: <time itemprop="checkoutTime" content="2023-03-16T10:00:00">Mar 16, 2023 10:00 AM</time>
      <div itemprop="priceSpecification" itemscope itemtype="https://schema.org/CompoundPriceSpecification">
        <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price">1222.74</span>
      </div>
    </div>
  </div>
</div>

JSON-LD (เลิกใช้งานแล้ว)

{
  "@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"
      }
    }
  }
}

แอตทริบิวต์ HTML5 ที่กำหนดเองซึ่งมีคำนำหน้า data-nav- ใช้เพื่อใส่คำอธิบายประกอบ องค์ประกอบแบบอินเทอร์แอกทีฟและประกาศสถานะหน้าเว็บ ซึ่งช่วยให้ Crawler ไปยังส่วนต่างๆ ในขั้นตอนการจองได้

การติดแท็กการนำทางใช้ไวยากรณ์แอตทริบิวต์ต่อไปนี้

Attributes

<body data-nav-stage="stage_name">
  ...
  <button data-nav-criticalpath="true"
          data-nav-interactiontype="CLICK"
          data-nav-interactionorder="1">
    Action
  </button>
  ...
  <button data-nav-close="true">Dismiss</button>
</body>

แอตทริบิวต์การนำทางมีดังนี้

แอตทริบิวต์ ค่า คำอธิบาย
data-nav-stage landing, room-selection, checkout, confirmation ประกาศสถานะ Funnel ที่ใช้งานอยู่สำหรับ Crawler แนบกับ <body> หรือ Wrapper ระดับสูง
data-nav-stage-final true, false ตัวบ่งชี้หน้าสุดท้ายของโฟลว์ (ค่าเริ่มต้น false) หากไม่มีองค์ประกอบที่มี data-nav-criticalpath="true" ในหน้า Crawler จะถือว่าหน้านั้นเป็นหน้าสุดท้ายของโฟลว์โดยอัตโนมัติ
data-nav-criticalpath true, false ทำเครื่องหมายองค์ประกอบที่ Crawler ต้องโต้ตอบด้วยเพื่อไปยังหน้าการจองสุดท้าย หากไม่มีองค์ประกอบที่มี data-nav-criticalpath="true" ในหน้า Crawler จะถือว่าหน้านั้นเป็นหน้าสุดท้ายของโฟลว์โดยอัตโนมัติ
data-nav-interactiontype CLICK, SELECT ระบุการดำเนินการโต้ตอบ CLICK ใช้สำหรับปุ่ม/ลิงก์ SELECT ใช้สำหรับเมนูแบบเลื่อนลง/กลุ่มปุ่มตัวเลือก
data-nav-interactionorder integer ระบุลำดับการดำเนินการสำหรับการนำทางแบบหลายขั้นตอน ระบบจะดำเนินการกับหมายเลขที่ต่ำกว่าก่อน
data-nav-close true ทำเครื่องหมายปุ่มปิดในป๊อปอัป การวางซ้อนแบนเนอร์คุกกี้ หรือโมดอลการขายอัปเซล

ตัวอย่างการติดแท็กการนำทางมีดังนี้

การคลิกเพื่อไปยังส่วนต่างๆ

ต่อไปนี้เป็นตัวอย่างพื้นฐานของการประกาศขั้นตอนใน Funnel ด้วยการนำทางด้วยการคลิก

<body data-nav-stage="room-selection" data-nav-stage-final="false">
  <h1>Select Your Room</h1>
  
  <!-- Crawler needs to click this to proceed -->
  <button data-nav-criticalpath="true"
          data-nav-interactiontype="CLICK"
          data-nav-interactionorder="1">
    Select & Proceed
  </button>
</body>

การนำทางแบบหลายขั้นตอน

ตัวอย่างต่อไปนี้แสดงการนำทางแบบหลายขั้นตอน ซึ่งรวมถึงแบนเนอร์คุกกี้ การเปิดเผยแบบ Accordion และการคลิก

<div data-nav-stage="landing" data-nav-stage-final="false">
  <!-- Hotel, LodgingReservation info, and Offer price are expected to be included in this page -->

  <!-- Step 1: Accept cookies -->
  <div class="cookie-banner">
    <p>We use cookies to improve your experience.</p>
    <button data-nav-close="true"
            data-nav-criticalpath="true"
            data-nav-interactiontype="CLICK"
            data-nav-interactionorder="1">Accept cookies</button>
  </div>

  <!-- Step 2: Open accordion to reveal pricing (Crucial for making prices visible in Mobile UIs) -->
  <div data-nav-criticalpath="true"
       data-nav-interactiontype="CLICK"
       data-nav-interactionorder="2"
       class="accordion-header">
    <span>View Room Rates</span>
  </div>


  <!-- Step 3: Book the room -->
  <div class="accordion-content">
    <button data-nav-criticalpath="true"
            data-nav-interactiontype="CLICK"
            data-nav-interactionorder="3">
      Book Now
    </button>
  </div>
</div>

การประกาศหน้าสุดท้าย

ตัวอย่างการประกาศหน้าสุดท้ายของขั้นตอนการจองมีดังนี้

<!-- Marks this as the final confirmation page where price is extracted -->
<!-- Hotel, LodgingReservation info, and Offer price are expected to be included in this page -->
<div data-nav-stage="confirmation" data-nav-stage-final="true">
  <h1>Grand View Hotel</h1>
  <!-- Price and other details here -->
</div>