تقدّم هذه الصفحة المواصفات الفنية والمرجع الخاص بالمفردات لترميزات البيانات المنظَّمة الخاصة بالفنادق على Schema.org.
نظرة عامة
توفّر البيانات المنظَّمة الخاصة بأسعار الفنادق تنسيقًا موحّدًا يمكن للآلة قراءته لشرح أسعار الفنادق المدرَجة على موقعك الإلكتروني والتحقّق من صحتها وعرضها، بغض النظر عن التنسيق المرئي. ويشمل ذلك الأسعار الأساسية والأسعار والمواصفات الخاصة بالغرف والرسوم والضرائب المفصّلة وسياسات الحجز.
تنصح Google بإضافة تعليقات توضيحية إلى صفحات الويب باستخدام البيانات المنظَّمة الموحّدة التي يوفّرها موقع Schema.org لاستخراج الأسعار من صفحات الويب بدقة.
تتيح البيانات المنظَّمة العادية توسيع نطاق عمليات التحقّق من دقة الأسعار من خلال تحسين موثوقية برامج الزحف، وزيادة عدد عمليات التحقّق من دقة الأسعار، وإتاحة تصحيح الأخطاء المباشر لمشاكل دقة الأسعار، والحفاظ على نتيجة متّسقة لدقة الأسعار.
إذا كنت لا تزال مبتدئًا في مجال البيانات المنظَّمة، يمكنك الاطّلاع على المزيد من المعلومات حول مفردات البيانات المنظَّمة وتنسيقاتها.
توصي "فنادق Google" تلقائيًا بتنسيق البيانات الجزئية لتضمين تعليقات توضيحية في صفحات الويب الخاصة بك من أجل التحقّق من دقة أسعار الفنادق. تم إيقاف التنسيق JSON-LD
لعملية التحقّق من دقة الأسعار. يُرجى العِلم أنّ هذه التوصية تنطبق بشكل صارم على التحقّق من دقة أسعار الفنادق، ولا تؤثر في الاستخدامات الأخرى للبيانات المنظَّمة على Google (مثل النتائج الغنية بصريًا على "بحث Google"). لمزيد من المعلومات حول التنسيقات المتوافقة مع ميزات "بحث Google" العامة، يمكنك الاطّلاع على التنسيقات المتوافقة.
توفّر هذه المستندات محتوًى مرجعيًا تفصيليًا خاصًا بتنفيذ البيانات المنظَّمة في "فنادق Google".
تُستخدَم بيانات Hotel المنظَّمة لإضافة تعليقات توضيحية إلى الحقول الخاصة بالفنادق في صفحة الويب. تتضمّن بيانات Hotel المنظَّمة الخصائص التالية:
السمتان
nameوaddressmakesOfferالسمةHotel priceSpecificationالسمةhasMerchantReturnPolicyالسمةeligibleCustomerTypeالسمة
تُستخدَم بيانات HotelRoom المنظَّمة لإضافة تعليقات توضيحية إلى الحقول الخاصة بالغرف في صفحة الويب.
تتضمّن بيانات HotelRoom المنظَّمة الخصائص التالية:
offersالسمةالسمتان
bedوoccupancyincludesObjectالسمةavailabilityالسمةamenityFeatureالسمة
تُستخدَم سمات التنقّل لشرح العناصر التفاعلية وحالات الصفحة لبرامج الزحف. لمزيد من المعلومات، يُرجى الاطّلاع على وضع علامات التنقّل.
البيانات المنظَّمة الخاصة بالفنادق
تنطبق السمات التالية على كيان "الفندق".
السمتان 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 البنية التالية:
البيانات الجزئية
<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:
البيانات الجزئية
<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 البنية التالية:
البيانات الجزئية
<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 | عروض الفندق لبرنامج الرحلة المحدّد
يمكن أن تحتوي السمة |
| LodgingReservation.checkinTime | Required | DateTime | وقت تسجيل الوصول في المنطقة الزمنية للمستخدم إذا لم يتم ذكر منطقتك الزمنية، سيتم اعتماد المنطقة الزمنية للفندق. |
| LodgingReservation.checkoutTime | Required | DateTime | وقت المغادرة في المنطقة الزمنية للمستخدم إذا لم يتم ذكر منطقتك الزمنية، سيتم اعتماد المنطقة الزمنية للفندق. |
مثال لـ makesOffer
في ما يلي مثال أساسي لإضافة تعليقات توضيحية إلى عروض الفنادق. يمكنك تحديد عروض متعددة لبرنامج الرحلة، ولكن عليك تحديد السعر المعروض على Google أولاً، ثم الأسعار الأخرى. يشمل مبلغ السعر المحدّد جميع الضرائب السارية.
البيانات الجزئية
<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)
تُستخدَم هذه السمة لإضافة تعليقات توضيحية إلى معلومات الأسعار الخاصة بفندقك أو غرفك الفندقية. هناك سمتان إضافيتان مطلوبتان لإضافة تعليقات توضيحية إلى الأسعار والضرائب. يجب استخدام 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 البنية التالية:
البيانات الجزئية
<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 على صفحتك المقصودة مع تفاصيل السعر الكاملة. يتيح لك إدخال تفاصيل الأسعار إكمال عمليات التحقّق من دقة الأسعار. يقبل محرّك بحث Google الأسعار على مستوى الفندق وعلى مستوى الغرفة. |
| Hotel.Offer.priceSpecification.priceCurrency | Required | currency | رمز عملة مكوّن من ثلاثة أحرف للسعر المحدّد. مثال: "USD"
. |
| Hotel.Offer.priceSpecification.priceComponent | Optional | UnitPriceSpecification[] | تفاصيل السعر الإجمالي، بما في ذلك الضرائب والرسوم المفروضة على الفندق هناك نوعان من البيانات المنظَّمة الخاصة بالأسعار:
يجب ضبط القيم في السمة |
| Hotel.Offer.priceSpecification.priceComponent. potentialAction | Optional | PayAction | نقطة الدفع في الفندق: تتضمّن إجراءات الدفع في الفندق الأسعار التي يتم تحصيلها عند تسجيل المغادرة من الموقع الإلكتروني للحجز وفي الفندق عند تسجيل الوصول. يجب استخدام السمة يتيح محرّك بحث Google استخدام الإعدادَين التاليَين لمستلم
|
أمثلة
في ما يلي أمثلة على مواصفات أسعار الفنادق.
السعر
في ما يلي مثال أساسي على إضافة بيانات السعر المنظَّمة إلى صفحة الويب. يمكن تضمين عروض متعددة على مستوى الفندق في السمة makesOffer.
تكون أنواع PostalAddress، مثل addressCountry وpostalCode وstreetAddress والحقول الأخرى، إلزامية إذا اخترت تحديد السمة address. يجب إدراج السعر المعروض على Google أولاً في السمة makesOffer. يشمل مبلغ السعر المحدّد جميع الضرائب السارية.
البيانات الجزئية
<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.
البيانات الجزئية
<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 الدفعة في وقت الحجز على أنّها طريقة الدفع التلقائية.
البيانات الجزئية
<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 بنية الجملة التالية:
البيانات الجزئية
<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 | تمثّل هذه السمة سياسة ردّ الأموال التي يحدّدها التاجر. على الشركاء استخدام
إذا لم يتم تحديد السمة |
مثال على سياسة الإرجاع
في ما يلي مثال أساسي على البيانات المنظَّمة لفندق يتضمّن تفاصيل الغرف وإجمالي السعر مع الضرائب والرسوم. يشير هذا المثال إلى إمكانية إلغاء الإقامة بدون أي رسوم حتى الساعة 11 مساءً (بالتوقيت العالمي المتفق عليه) في 18 كانون الأول (ديسمبر) 2023. على الشركاء استخدام
"MerchantReturnPolicy.restockingFee" للإشارة إلى سياسات الإلغاء
التي لا تردّ المبلغ الكامل للإقامة. القيمة التلقائية restockingFee هي 0 دولار أمريكي.
البيانات الجزئية
<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 بنية الجملة التالية:
البيانات الجزئية
<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. |
أمثلة
في ما يلي أمثلة على الأسعار المخصّصة للمشتركين في برنامج المكافآت.
الأسعار الخاصة بالمشتركين
في ما يلي مثال أساسي على تحديد الأسعار المخصّصة للمشتركين أو الأسعار المحجوزة لبرامج الولاء. العميل هو "أحد أعضاء برنامج المكافآت" في الفندق.
البيانات الجزئية
<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"
}
]
}
}
}
الأسعار الخاصة بالمشتركين والأسعار العادية
في ما يلي مثال على كلّ من التعليقات التوضيحية للأسعار العادية والأسعار المخصّصة للمشتركين. يتم عرض سعر الاشتراك أولاً، ثم الأسعار العادية.
البيانات الجزئية
<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"
}
]
}
}
]
}
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 بنية الجملة التالية:
البيانات الجزئية
<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 | مواصفات سعر الغرفة لبرنامج الرحلة المحدّد. يمكن أن تحتوي السمة |
| LodgingReservation.checkinTime | Required | DateTime | وقت تسجيل الوصول في المنطقة الزمنية للمستخدم إذا لم يتم ذكر منطقتك الزمنية، سيتم اعتماد المنطقة الزمنية للفندق. |
| LodgingReservation.checkoutTime | Required | DateTime | وقت المغادرة في المنطقة الزمنية للمستخدم إذا لم يتم ذكر منطقتك الزمنية، سيتم اعتماد المنطقة الزمنية للفندق. |
مثال لـ offers
البيانات الجزئية
<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 بنية الجملة التالية:
البيانات الجزئية
<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 | تمثّل هذه السمة نوع الأسرّة المتوفرة في مكان الإقامة وعدد الأشخاص الذين يمكنهم الإقامة في الغرفة. القيم المسموح بها هي:
|
| HotelRoom.occupancy | Optional (Recommended) | QuantitativeValue | تمثّل هذه السمة عدد الضيوف في غرفة الفندق. نوع الإشغال هو السمة "الإشغال" هي سمة صريحة خاصة بـ |
| containsPlace | Optional (Recommended) | LocationFeatureSpecification | يُستخدَم هذا العنصر لإضافة تعليقات توضيحية إلى الأسعار على مستوى الغرفة المرتبطة بغرف معيّنة. ويمكن استخدامها أيضًا لتحديد وسائل الراحة المتوفّرة في الغرفة. يمكنك الاطّلاع على مزيد من المعلومات حول كيفية استخدام |
أمثلة
في ما يلي أمثلة على مواصفات السرير والإشغال.
مثال لـ HotelRoom
في ما يلي مثال أساسي على الأسرّة وعدد الأشخاص المسموح به في غرفة محدّدة.
البيانات الجزئية
<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.
البيانات الجزئية
<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 الخاصة بغرف الفنادق بنية الجملة التالية:
البيانات الجزئية
<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 | تمثّل هذه السمة السعر لكل غرفة، بما في ذلك الضرائب والرسوم المترتبة على
يجب دائمًا إضافة تعليق توضيحي إلى سعر Google على صفحتك المقصودة مع تفاصيل السعر الكاملة. يتيح لك إدخال تفاصيل الأسعار إكمال عمليات التحقّق من دقة الأسعار. يقبل محرّك بحث Google الأسعار على مستوى الفندق وعلى مستوى الغرفة. |
| Hotel.Offer.priceSpecification.priceCurrency | Required | currency | رمز عملة مكوّن من ثلاثة أحرف للسعر المحدّد. مثال: "USD"
. |
| Hotel.Offer.priceSpecification.priceComponent | Optional | UnitPriceSpecification[] | تفاصيل السعر الإجمالي، بما في ذلك الضرائب والرسوم الخاصة بغرفة الفندق والإشغال مع العروض المرتبطة بـ
|
أمثلة
في ما يلي أمثلة على HotelRoom مواصفات الأسعار.
مثال على السعر الإجمالي للغرفة
في ما يلي مثال أساسي على تحديد السعر الإجمالي لمدة الإقامة والسعر لكل شخص.
البيانات الجزئية
<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، ومعدّل إشغال يبلغ ضيفَين.
البيانات الجزئية
<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 بنية الجملة التالية للخدمات الخاصة بالسعر
المتاحة في الغرفة:
البيانات الجزئية
<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
في ما يلي مثال أساسي على الميزات الخاصة بالسعر لخدمة صف السيارات وخدمات الطعام. يجب تحديد الميزات الخاصة بالسعر باستخدام السمة Offer.includesObject. يجب استخدام حقل الاسم في
TypeAndQuantityNode.typeOfGood للإشارة إلى نوع الخدمة.
البيانات الجزئية
<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 بنية الجملة التالية:
البيانات الجزئية
<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 | تعرض هذه السمة معلومات توفّر الفندق أو الغرفة. يتم استخراج الأسعار من
يُعدّ العرض غير متاح إذا لم يتضمّن ليس من الضروري تحديد |
مثال لـ availability
في ما يلي مثال أساسي لعرض عدم توفّر غرف فندقية. يجب تضمين نوع السرير وعدد الأسرّة وتفاصيل الإشغال للغرفة المحدّدة.
البيانات الجزئية
<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 البنية التالية:
البيانات الجزئية
<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 | تحدّد هذه السمة نوع اتصال الإنترنت المتاح في المكان المخصّص للاستئجار. القيمتان المسموح بإدراجهما هما:
|
| amenityFeature.ParkingType | Optional | Enum | تحدّد هذه السمة نوع موقف السيارات المتاح في المكان المخصّص للاستئجار. القيمتان المسموح بإدراجهما هما:
|
| amenityFeature.PoolType | Optional | Enum | تحدّد هذه السمة نوع حوض السباحة المتاح في المكان المخصّص للاستئجار. القيمتان المسموح بإدراجهما هما:
|
| amenityFeature.RoomStyle | Optional | Enum | تشير هذه السمة إلى ما إذا كانت الغرفة مصمَّمة على الطراز الياباني. القيمتان المسموح بإدراجهما هما:
|
| amenityFeature.LicenseNum | Required | string | تشير هذه السمة إلى رقم ترخيص النشاط التجاري المطلوب عرضه على المكان المخصّص للاستئجار في مناطق محدّدة من العالم. وهي قابلة للتكرار، وفي حال توفُّر عدة تراخيص، ننصح بإضافة جهة إصدار الترخيص. على سبيل المثال، |
الخصائص
في ما يلي سمات amenityFeature:
| الموقع | مطلوب؟ | النوع | الوصف |
|---|---|---|---|
| amenityFeature | Optional | LocationFeatureSpecification | تشير هذه السمة إلى وسائل الراحة المتوفّرة في الفندق أو الغرفة. يمكن تحديدها باستخدام السمة يمكن تحديد وسائل الراحة على مستوى |
| containsPlace | Optional | LocationFeatureSpecification | تشير إلى وسائل الراحة المتوفّرة في الفندق أو الغرفة لجميع نزلاء الفندق. ويمكن تحديدها باستخدام
|
مثال على وسائل الراحة
في ما يلي مثال أساسي على فندق يضم مسبحًا مفتوحًا من الساعة 10 صباحًا إلى الساعة 10 مساءً ولا يتوفّر فيه نادٍ رياضي. غرفة الفندق مخصّصة لغير المدخنين وتحتوي على بار صغير.
البيانات الجزئية
<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- لتوضيح العناصر التفاعلية والإشارة إلى حالات الصفحة، ما يتيح لبرنامج الزحف التنقّل خلال مسار الحجز.
البنية
تستخدم علامات التنقّل بنية السمات التالية:
السمات
<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 | تُعلن هذه السمة عن حالة المسار الإعلاني النشط لبرامج الزحف. مُضافة إلى <body> أو إلى برنامج تضمين عالي المستوى |
| data-nav-stage-final | true, false | مؤشر الصفحة الأخيرة من المسار (القيمة التلقائية false). إذا لم تتضمّن الصفحة أي عناصر تحمل القيمة data-nav-criticalpath="true"، سيعتبرها الزاحف تلقائيًا الصفحة الأخيرة من المسار. |
| data-nav-criticalpath | true, false | تحدّد هذه السمة عنصرًا يجب أن يتفاعل معه الزاحف للوصول إلى صفحة الحجز النهائية. إذا لم تتضمّن الصفحة أي عناصر تحمل السمة data-nav-criticalpath="true"، سيعتبرها برنامج الزحف تلقائيًا الصفحة الأخيرة من المسار. |
| data-nav-interactiontype | CLICK, SELECT | تحدّد هذه السمة إجراء التفاعل. يُستخدم CLICK للأزرار/الروابط. يُستخدَم SELECT للقوائم المنسدلة/مجموعات أزرار الاختيار. |
| data-nav-interactionorder | integer | توفّر تسلسلاً للتنفيذ من أجل التنقّل المتعدّد الخطوات. يتم تنفيذ الأرقام الأصغر أولاً. |
| data-nav-close | true | تضع علامات على أزرار الإغلاق في النوافذ المنبثقة أو التراكبات الخاصة ببانر ملفات تعريف الارتباط أو النوافذ المنبثقة الخاصة بزيادة المبيعات. |
مثال على التنقّل
في ما يلي أمثلة على وضع علامات التنقّل.
التنقّل بالنقر
في ما يلي مثال أساسي على التنقّل بالنقر الذي يوضّح مرحلة مسار الإحالة الناجحة.
<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>
التنقّل المتعدّد الخطوات
في ما يلي مثال على التنقّل المتعدّد الخطوات الذي يتضمّن بانر ملفات تعريف الارتباط، والكشف عن المحتوى في قائمة أكورديون، والنقر.
<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>