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

หน้านี้แสดงข้อมูลอ้างอิงสำหรับการเพิ่มมาร์กอัป Structured Data ไปยังโรงแรมของคุณ ข้อมูลราคา

ภาพรวม

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

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

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

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

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

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

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

ข้อมูลที่มีโครงสร้าง HotelRoom มีพร็อพเพอร์ตี้ต่อไปนี้

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 ใช้ไวยากรณ์ต่อไปนี้

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

{
"@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 ใช้ไวยากรณ์ต่อไปนี้

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 ก่อนตามด้วยอัตราอื่นๆ ราคา ที่ระบุรวมภาษีที่เกี่ยวข้องทั้งหมด

{
  "@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 ใช้ไวยากรณ์ต่อไปนี้

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

Microdata

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

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

ต่อไปนี้คือพร็อพเพอร์ตี้ 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[]

การแจกแจงราคาทั้งหมดรวมภาษีและค่าธรรมเนียมสำหรับโรงแรม ข้อมูลที่มีโครงสร้างราคามี 2 ประเภทดังนี้

  • CompoundPriceSpecification แสดงรายละเอียดราคาสำหรับ ได้แก่

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

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

    • ค่าบริการต่อผู้เข้าพัก: ราคาต่อคืนต่ออัตราการเข้าพัก

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

  • UnitPriceSpecification จะใช้ในการระบุประเภทการเรียกเก็บเงิน คุณควรใส่ PriceComponentTypeEnumeration สำหรับการระบุค่าใช้จ่ายเพิ่มเติม

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

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

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

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

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

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

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

Hotel.Offer.priceSpecification.priceComponent. potentialAction Optional PayAction

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

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

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

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

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

ตัวอย่าง

ตัวอย่าง JSON-LD

ราคา

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

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

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

{
  "@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 และเว็บไซต์ออนไลน์จะเรียกเก็บเงินบางส่วน ของราคารวมซึ่งเท่ากับ $1,150 ณ เวลาที่จอง ซึ่งระบุโดยใช้ "@type": "OnlineBusiness" และผู้ใช้จะต้องชำระเงินที่เหลือ $20 ที่ เวลาเช็คอินที่โรงแรมซึ่งระบุโดยใช้ @type": "Hotel"

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

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

ตัวอย่าง Microdata

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

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

ราคารวมสำหรับระยะเวลาในการเข้าพักควรระบุไว้ในฟิลด์ พร็อพเพอร์ตี้ CompoundPriceSpecification การแจกแจงราคาควรเป็น ที่ระบุไว้ในพร็อพเพอร์ตี้ 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>

ที่พัก hasMerchantReturnPolicy แห่ง

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

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

ไวยากรณ์

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

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

{
  "@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 มีไวยากรณ์ต่อไปนี้

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

ตัวอย่าง

ราคาสมาชิก

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

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

สมาชิก & ราคาปกติ

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

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

ข้อมูลที่มีโครงสร้างของ 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 มีไวยากรณ์ต่อไปนี้

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 สามารถประกอบด้วยอาร์เรย์ของ Google

LodgingReservation.checkinTime Required DateTime

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

LodgingReservation.checkoutTime Required DateTime

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

ตัวอย่าง

ข้อเสนอพิเศษ

ต่อไปนี้เป็นตัวอย่างพื้นฐานสำหรับการระบุ offers ใน 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"
    }
  }
}

พร็อพเพอร์ตี้ 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 มีไวยากรณ์ต่อไปนี้

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

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

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

{
  "@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 สำหรับห้องพักมีไวยากรณ์ต่อไปนี้

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 ข้อมูลที่มีโครงสร้างราคามี 2 ประเภทดังนี้

  • CompoundPriceSpecification แสดงรายละเอียดราคาสำหรับ ได้แก่

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

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

    • ค่าบริการต่อผู้เข้าพัก: ราคาต่อคืนต่ออัตราการเข้าพัก

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

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

  • UnitPriceSpecification จะใช้ในการระบุประเภทการเรียกเก็บเงิน คุณควรใส่ PriceComponentTypeEnumeration สำหรับการระบุค่าใช้จ่ายเพิ่มเติม

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

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

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

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

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

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

ตัวอย่าง

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

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

{
  "@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 คน

{
  "@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 มีไวยากรณ์ต่อไปนี้สำหรับบริการเฉพาะราคา ว่างในห้องพัก:

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

ตัวอย่าง

บริการ

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

{
  "@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 มีไวยากรณ์ต่อไปนี้

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.

ตัวอย่าง

ความพร้อมใช้งาน

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

{
  "@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 มีสิ่งต่อไปนี้ ไวยากรณ์:

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 น. และไม่มีบริการฟิตเนสในที่พัก ห้องพักของโรงแรมเป็นห้องปลอดบุหรี่ และมีมินิบาร์

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