度假民宿 (VacationRental) 結構化資料

這張插圖顯示 Google 搜尋中的度假民宿

在度假民宿資訊頁面加入結構化資料後,Google 搜尋就能以更豐富的方式顯示您的商家資訊。使用者可以在搜尋結果中看到名稱、說明、圖片、地點、評分、評論等資訊。

事前須知

這些操作說明適用於已與 Google 客戶技術顧問連結,並能存取 Hotel Center 的網站。如果您有意整合度假民宿商家資訊,請填寫度假民宿意願調查表。填寫表單僅代表您有興趣,不保證一定會收到早期採用者計畫的邀請。

這項功能僅適用於符合特定資格條件且必須進行額外步驟以完成整合作業的網站。如要進一步瞭解如何在 Google 上刊登度假民宿資訊,請參閱整合入門指南

如何添加结构化数据

结构化数据是一种提供网页相关信息并对网页内容进行分类的标准化格式。如果您不熟悉结构化数据,可以详细了解结构化数据的运作方式

下面概述了如何构建、测试和发布结构化数据。如需获得向网页添加结构化数据的分步指南,请查看结构化数据 Codelab

  1. 添加必要属性。根据您使用的格式,了解在网页上的什么位置插入结构化数据
  2. 遵循指南
  3. 使用富媒体搜索结果测试验证您的代码,并修复所有严重错误。此外,您还可以考虑修正该工具中可能会标记的任何非严重问题,因为这些这样有助于提升结构化数据的质量(不过,要使内容能够显示为富媒体搜索结果,并非必须这么做)。
  4. 部署一些包含您的结构化数据的网页,然后使用网址检查工具测试 Google 看到的网页样貌。请确保您的网页可供 Google 访问,不会因 robots.txt 文件、noindex 标记或登录要求而被屏蔽。如果网页看起来没有问题,您可以请求 Google 重新抓取您的网址
  5. 为了让 Google 随时了解日后发生的更改,我们建议您提交站点地图Search Console Sitemap API 可以帮助您自动执行此操作。

範例

以下是採用 JSON-LD 格式呈現的簡易度假民宿資訊範例。


<html>
  <head>
    <title>My Beautiful Vacation Rental</title>
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@type": "VacationRental",
        "additionalType": "HolidayVillageRental",
        "brand": {
          "@type": "Brand",
          "name": "brandIdName"
        },
        "containsPlace": {
          "@type": "Accommodation",
          "additionalType": "EntirePlace",
          "bed": [{
            "@type": "BedDetails",
            "numberOfBeds" : 1,
            "typeOfBed": "Queen"
          },
          {
            "@type": "BedDetails",
            "numberOfBeds" : 2,
            "typeOfBed": "Single"
          }],
         "occupancy": {
            "@type": "QuantitativeValue",
            "value" : 2
          },
          "amenityFeature": [
            {
              "@type": "LocationFeatureSpecification",
              "name": "ac",
              "value": true
            },
            {
              "@type": "LocationFeatureSpecification",
              "name": "airportShuttle",
              "value": true
            },
            {
             "@type": "LocationFeatureSpecification",
              "name": "balcony",
              "value": true
            },
            {
              "@type": "LocationFeatureSpecification",
              "name": "beachAccess",
              "value": true
            },
            {
              "@type": "LocationFeatureSpecification",
              "name": "childFriendly",
              "value": true
            }
          ],
          "floorSize": {
            "@type": "QuantitativeValue",
            "value" : 75,
            "unitCode": "MTK"
          },
          "numberOfBathroomsTotal": 1,
          "numberOfBedrooms": 3,
          "numberOfRooms": 5
        },
        "identifier": "abc123",
        "latitude": "42.12345",
        "longitude": "101.12345",
        "name": "My Beautiful Vacation Rental",
        "address": {
          "addressCountry": "US",
          "addressLocality": "Mountain View",
          "addressRegion": "California",
          "postalCode": "94043",
          "streetAddress": "1600 Amphitheatre Pkwy, Unit 6E"
        },
        "aggregateRating": {
          "ratingValue": 4.5,
          "ratingCount": 10,
          "reviewCount": 3,
          "bestRating": 5
        },
        "image": [
          "https://example.com/mylisting/unit_image1.png",
          "https://example.com/mylisting/unit_image2.png",
          "https://example.com/mylisting/unit_image3.png",
          "https://example.com/mylisting/unit_image4.png",
          "https://example.com/mylisting/unit_image5.png",
          "https://example.com/mylisting/unit_image6.png",
          "https://example.com/mylisting/unit_image7.png",
          "https://example.com/mylisting/unit_image8.png"
        ],
        "checkinTime": "18:00:00+08:00",
        "checkoutTime": "11:00:00+08:00",
        "description": "A great Vacation Rental in the perfect neighborhood.",
        "knowsLanguage": ["en-US", "fr-FR"],
        "review": [{
          "@type": "Review",
          "reviewRating": {
            "@type": "Rating",
            "ratingValue": 4,
            "bestRating": 5
          },
          "author": {
            "@type": "Person",
            "name": "Lillian Ruiz"
          },
          "datePublished": "2024-12-01",
          "contentReferenceTime": "2024-11-17"
        },
        {
          "@type": "Review",
          "reviewRating": {
            "@type": "Rating",
            "ratingValue": 5,
            "bestRating": 5
          },
          "author": {
            "@type": "Person",
            "name": "John S."
          },
          "datePublished": "2024-10-01",
          "contentReferenceTime": "2024-09-28"
        }
      ]
      }
    </script>
  </head>
  <body></body>
  </html>

適用資格準則

您的度假民宿結構化資料必須符合下列規範,才能顯示在 Google 搜尋中。

結構化資料類型定義

下表列出使用 schema.org/VacationRental 來標記度假民宿資訊的屬性和使用方式。您的結構化資料必須包含必要的屬性才能顯示。您也可以加入建議的屬性,為內容新增更多相關資訊,提供更優質的使用者體驗。

VacationRental

schema.org/VacationRental 內提供 VacationRental 的完整定義。

必要屬性
containsPlace

Accommodation

度假民宿商家資訊必須包含一項住宿,才能標記其他詳細資料,例如床鋪、可住人數、客房數量和 amenityFeature 資源。

containsPlace.occupancy

QuantitativeValue

有關度假民宿資訊中允許入住房客人數上限的資訊。

"occupancy": {
  "@type": "QuantitativeValue",
  "value" : 5
  }
containsPlace.occupancy.value

Integer

度假民宿資訊中允許入住房客的人數值。

identifier

Text

資源的專屬 ID。

其他規範:

  • ID 必須與資訊內容無關;舉例來說,當資源擁有者更新資訊名稱或房間數量時,資源並不會發生變化。
  • 必須為不同語言中的同一資訊使用相同的 ID。
image

重複的 URL

一或多張商家的圖片。商家至少需要 8 張相片 (以下每個項目至少各 1 張圖片:臥室、浴室和公共區域)。

此外,請遵守資源資訊圖片規定

latitude
(或 geo.latitude)

Number

商家所在地點的緯度,精確度必須至少達到第 5 位小數。

longitude
(或 geo.longitude)

Number

商家所在地點的經度。精確度必須至少達到第 5 位小數。

name

Text

度假民宿資訊的名稱。

建議屬性
additionalType

Text

度假民宿資訊的類型。以下提供幾個建議值:

  • Apartment
  • Bungalow
  • Cabin
  • Chalet
  • Cottage
  • Gite
  • HolidayVillageRental
  • House
  • Villa
  • VacationRental

這些值的完整定義請參閱住宿服務商家類別

address

PostalAddress

度假民宿的完整實際地點。

請提供度假民宿的街道地址、城市、州/省或區域,以及郵遞區號。如果有的話,也請提供住宅單元或公寓的號碼。

請注意,郵政信箱或其他僅供郵寄的地址都不算是完整的實際地址。

"address": {
  "addressCountry": "US",
  "addressLocality": "Mountain View",
  "addressRegion": "California",
  "postalCode": "94043",
  "streetAddress": "1600 Amphitheatre Pkwy, Apartment 4E"
}
address.addressCountry

Text

度假商家所在國家/地區,使用雙字母的 ISO 3166-1 alpha-2 國家/地區代碼

address.addressLocality

Text

度假商家所在的城市。

address.addressRegion

Text

商家所在的州、區域或省名。

address.postalCode

Text

度假商家的郵遞區號。

address.streetAddress

Text

度假商家的完整街道地址,包括住宅單元或公寓的號碼 (如有)。

aggregateRating

AggregateRating

平均度假民宿評分是根據多項評分或評論計算得出。請遵循評論摘錄規範,以及必要和建議的 AggregateRating 屬性清單。

brand

Brand

與這個房源相關聯的品牌 ID。如要進一步瞭解如何將資源與品牌建立關聯,以及如何將品牌圖示和顯示名稱連結至個別品牌 ID,請參閱 Hotel Center 說明文件

"brand": {
  "@type": "Brand",
  "name" : "brandIdName"
}
checkinTime

Time

房客最早可能會入住住宿場所的時間,採用 ISO 8601 格式

範例:14:30:00+08:00

checkoutTime

Time

房客最晚可能會入住住宿場所的時間,採用 ISO 8601 格式

範例:14:30:00+08:00

containsPlace.additionalType

Text

此住宿的房型。請使用下列其中一個值:

  • EntirePlace
  • PrivateRoom
  • SharedRoom
containsPlace.amenityFeature

重複的 amenityFeature

資源是否具有特定特色或設施。布林值範例遵循以下模式:

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "featureName",
  "value": true
}
布林值

amenityFeature.name 屬性使用下列其中一個值。這些值必須使用英文,即使是非英文的商家也是如此。

ac

資源是否有空調。

airportShuttle

房主是否提供往返機場或其他航廈的交通服務。

balcony

資源是否有陽台。

beachAccess

資源是否可通往附近的公共海灘。

childFriendly

資源是否適合兒童。

crib

資源是否提供嬰兒床。

elevator

資源是否有電梯。

fireplace

資源是否有壁爐。

freeBreakfast

資源是否包含早餐。

gymFitnessEquipment

資源是否有健身房或健身器材。

heating

資源是否有暖氣。

hotTub

資源是否有熱水浴缸。

instantBookable

資源是否可透過結帳程序立即預訂。替代方法是等待核准。

ironingBoard

資源是否提供熨衣板。

kitchen

資源是否有廚房。

microwave

資源是否有微波爐。

outdoorGrill

資源是否有燒烤架。

ovenStove

資源是否有烤箱或火爐。

patio

資源是否有露台。

petsAllowed

房客是否可以攜帶寵物入住。

pool

資源是否設有泳池。

privateBeachAccess

資源是否擁有專屬的非公共海灘。

selfCheckinCheckout

資源是否提供自助入住和退房服務。

smokingAllowed

室內是否允許房客吸菸。

tv

資源是否有電視。

washerDryer

資源是否提供洗衣機。

wheelchairAccessible

資源是否提供無障礙設施。

wifi

資源是否有 Wi-Fi。

非布林值

對於 amenityFeature,我們也支援下列非布林值 namevalue 組合。這兩個值都必須使用英文,即使是非英文的商家也是如此。

非布林值遵循以下模式:

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "featureName",
  "value": "detail"
  }

internetType

資源提供的網際網路類型。以下提供幾個建議值:

  • Free
  • Paid
  • None
"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "internetType",
  "value": "Free"
}

parkingType

資源提供的停車類型。以下提供幾個建議值:

  • Free
  • Paid
  • None

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "parkingType",
  "value": "Free"
}
poolType

資源提供的泳池類型。以下提供幾個建議值:

  • Indoor
  • Outdoor
  • None

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "poolType",
  "value": "Outdoor"
}

licenseNum

在全球某些地區需要顯示的資源執照號碼 (遊客或商家)。如果有多份執照,則可以重複添加,建議新增執照發證機構做為背景資訊 (例如:Paris: 123456ABC)。

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "licenseNum",
  "value": "Paris: 123456ABC"
}
containsPlace.bed

重複的 BedDetails

商家資訊中的床位類型和數量相關資訊。

"bed": [{
  "@type": "BedDetails",
  "numberOfBeds" : 1,
  "typeOfBed": "Queen"
  },
  {
  "@type": "BedDetails",
  "numberOfBeds" : 2,
  "typeOfBed": "Single"
  }]
containsPlace.bed.numberOfBeds

Integer

商家資訊中的床位數。

containsPlace.bed.typeOfBed

Text

商家資訊中的床位類型。以下提供幾個建議值:

  • CaliforniaKing
  • King
  • Queen
  • Full
  • Double
  • SemiDouble
  • Single

containsPlace.floorSize

QuantitativeValue

住宿場所大小。必須使用 unitCode 屬性值指定:

  • 以平方英尺為單位:FTKSQFT
  • 以平方公尺為單位:MTKSQM
"floorSize": {
  "@type": "QuantitativeValue",
  "value" : 75,
  "unitCode": "MTK"
  }
containsPlace.numberOfBathroomsTotal

Integer

商家資訊中的浴室總數。請遵循 RESO 文件中所述的的房地產慣例,並採用浴室數量的簡單總和。舉例來說,如果資源有兩間標準浴室和一間半套浴室,則浴室總數為 2.5。

containsPlace.numberOfBedrooms

Integer

商家資訊中的臥室總數。

containsPlace.numberOfRooms

Integer

商家資訊中的會議室總數。

description

Text

資源的說明。

knowsLanguage

Repeated Text

屋主可以使用語言。請使用符合 IETF BCP 47 標準的語言代碼,例如 en-USfr-FR

review

Repeated Review

商家資訊的一或多則使用者評論。請遵循評論摘錄規範,以及必要和建議的 review 屬性清單。

"review": {
  "@type": "Review",
  "reviewRating": {
    "@type": "Rating",
    "ratingValue": 4,
    "bestRating": 5
  },
  "datePublished": "2023-02-09"
  "author": {
    "@type": "Person",
    "name": "Lillian R"
  }
}
review.contentReferenceTime

DateTime

作者的入住的開始日期。

使用 Search Console 监控富媒体搜索结果

Search Console 是一款工具,可帮助您监控网页在 Google 搜索结果中的显示效果。即使没有注册 Search Console,您的网页也可能会显示在 Google 搜索结果中,但注册 Search Console 能够帮助您了解 Google 如何查看您的网站并做出相应的改进。建议您在以下情况下查看 Search Console:

  1. 首次部署结构化数据后
  2. 发布新模板或更新代码后
  3. 定期分析流量时

首次部署结构化数据后

等 Google 将网页编入索引后,请在相关的富媒体搜索结果状态报告中查看是否存在问题。 理想情况下,有效项目数量会增加,而无效项目数量不会增加。如果您发现结构化数据存在问题,请执行以下操作:

  1. 修正无效项目
  2. 检查实际网址,核实问题是否仍然存在。
  3. 使用状态报告请求验证

发布新模板或更新代码后

如果对网站进行重大更改,请监控结构化数据无效项目的增幅。
  • 如果您发现无效项目增多了,可能是因为您推出的某个新模板无法正常工作,或者您的网站以一种新的错误方式与现有模板交互。
  • 如果您发现有效项目减少了(但无效项目的增加情况并不对应),可能是因为您的网页中未再嵌入结构化数据。请通过网址检查工具了解导致此问题的原因。

定期分析流量时

请使用效果报告分析您的 Google 搜索流量。数据将显示您的网页在 Google 搜索结果中显示为富媒体搜索结果的频率、用户点击该网页的频率以及网页在搜索结果中的平均排名。您还可以使用 Search Console API 自动提取这些结果。

疑難排解

如果無法順利導入結構化資料,或是偵錯時遇到困難,請參考下列資源。

  • 如果您使用內容管理系統 (CMS) 或者有他人代您處理網站事務,請向對方尋求協助。請務必將所有與問題相關的 Search Console 訊息都轉寄給對方,這些訊息會針對問題提供詳細說明。
  • Google 不保證採用結構化資料的功能一定會顯示在搜尋結果中。如要瞭解為何 Google 無法將您的內容顯示為複合式搜尋結果,請參閱結構化資料通用指南裡的常見原因清單。
  • 結構化資料可能含有錯誤。請查看結構化資料錯誤清單無法剖析的結構化資料報告
  • 如果您的網頁遭到結構化資料人工判決處罰,系統會忽略網頁上的結構化資料,但該網頁仍然會出現在 Google 搜尋結果中。請使用人工判決處罰報告來修正結構化資料問題
  • 再次查看指南規範,確認您的內容是否符合規定。問題可能是因為垃圾內容或不當使用的標記所引起。不過,因為問題可能與語法無關,所以複合式搜尋結果測試無法找出問題所在。
  • 參閱「疑難排解:未出現複合式搜尋結果/複合式搜尋結果總數減少」。
  • 請等待一段時間,讓系統執行重新檢索和重新建立索引作業。在發布網頁後,Google 可能需要幾天時間才會找到網頁並進行檢索。如有關於檢索和索引建立作業的一般問題,請參閱 Google 搜尋檢索和索引常見問題
  • 前往 Google 搜尋中心論壇發文提問。