Uporządkowane dane dotyczące kwater wakacyjnych (VacationRental)

Ilustracja przedstawiająca kwatery wakacyjne w wyszukiwarce Google

Jeśli dodasz uporządkowane dane do stron z informacjami o kwaterach wakacyjnych, wyszukiwarka Google może wyświetlać te informacje w bardziej rozbudowany sposób. Bezpośrednio w wynikach wyszukiwania użytkownicy zobaczą takie informacje jak nazwa, opis, obrazy, lokalizacja, ocena czy opinie.

Zanim zaczniesz

Te instrukcje są przeznaczone dla właścicieli witryn, które są już połączone z Technicznym menedżerem konta Google i mają dostęp do Hotel Center. Jeśli chcesz zintegrować swoje oferty dotyczące kwater wakacyjnych, ale jeszcze się z Tobą nie skontaktowaliśmy, skontaktuj się z nami za pomocą formularza zgłoszenia zainteresowania dotyczącego kwater wakacyjnych.

Ta funkcja jest dostępna tylko w witrynach, które spełniają określone kryteria kwalifikacji. Aby zakończyć integrację, musisz wykonać dodatkowe czynności. Więcej informacji o umieszczaniu w Google oferty kwater wakacyjnych znajdziesz w przewodniku dla początkujących partnerów integracyjnych.

Dodawanie uporządkowanych danych

Uporządkowane dane to standardowy format udostępniania informacji o stronie i klasyfikowania jej zawartości. Jeśli dopiero zaczynasz, dowiedz się, jak działają uporządkowane dane.

Poniżej omawiamy sposób tworzenia, testowania i udostępniania uporządkowanych danych. Szczegółowe instrukcje dodawania uporządkowanych danych do strony internetowej znajdziesz w ćwiczeniach z programowania poświęconych uporządkowanym danym.

  1. Dodaj wymagane właściwości. Dowiedz się, w którym miejscu na stronie umieścić uporządkowane dane w zależności od używanego formatu.
  2. Przestrzegaj wskazówek.
  3. Zweryfikuj kod za pomocą testu wyników z elementami rozszerzonymi i napraw błędy krytyczne. Rozważ też usunięcie niekrytycznych problemów, które mogą zostać zgłoszone w narzędziu – to może poprawić jakość uporządkowanych danych (ale nie jest to konieczne, aby witryna kwalifikowała się do wyników z elementami rozszerzonymi).
  4. Możesz wdrożyć kilka stron z uporządkowanymi danymi i dzięki narzędziu do sprawdzania adresów URL zobaczyć, jak Google je odczytuje. Upewnij się, że Twoja strona jest dostępna dla Google i nie jest blokowana przez plik robots.txt lub tag noindex ani nie wymaga logowania. Jeśli strona wygląda dobrze, możesz poprosić Google o ponowne zindeksowanie adresów URL.
  5. Aby na bieżąco informować Google o przyszłych zmianach, prześlij mapę witryny. Możesz zautomatyzować ten proces za pomocą interfejsu Search Console Sitemap API.

Przykład

Oto przykład prostej informacji o kwaterze wakacyjnej podanej za pomocą kodu 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>

Kryteria uczestnictwa

Aby uporządkowane dane dotyczące kwater wakacyjnych mogły wyświetlać się w wyszukiwarce Google, musisz przestrzegać tych wytycznych.

Definicje typów uporządkowanych danych

W tych tabelach podano właściwości i sposób użycia funkcji służących do oznaczania ofert kwater wakacyjnych za pomocą schema.org/VacationRental. Aby uporządkowane dane mogły się wyświetlać, musisz w nich stosować wymagane właściwości. Możesz też dodać właściwości zalecane, aby wzbogacić informacje o treściach i zwiększyć w ten sposób wygodę użytkowników.

VacationRental

Pełną definicję znaczników VacationRental znajdziesz na schema.org/VacationRental.

Właściwości wymagane
containsPlace

Accommodation

Informacje o kwaterze wakacyjnej muszą zawierać 1 znacznik Accommodation, aby można było oznaczyć dodatkowe informacje, np. liczbę łóżek, liczbę osób, liczbę pokoi i właściwości amenityFeature.

containsPlace.occupancy

QuantitativeValue

Informacje o maksymalnej liczbie osób, które mogą przebywać w kwaterze wakacyjnej.

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

Integer

Wartość liczbowa liczby osób, które mogą zatrzymać się w kwaterach wakacyjnych z danej oferty.

identifier

Text

Unikalny identyfikator usługi.

Dodatkowe wskazówki:

  • identyfikator musi być niezależny od treści oferty, np. nie zmieni się, gdy właściciel nieruchomości zaktualizuje nazwę oferty lub liczbę pokoi.
  • W przypadku tej samej oferty w różnych językach należy używać tego samego identyfikatora.
image

Powtórzony URL.

Co najmniej 1 zdjęcie obiektu. Oferta musi zawierać co najmniej 8 zdjęć (co najmniej 1 zdjęcie każdej z tych części: sypialnia, łazienka i część ogólnodostępna).

Dodatkowo musisz przestrzegać wymagań dotyczących zdjęć na stronie oferty.

latitude
(lub geo.latitude)

Number

Szerokość geograficzna lokalizacji kwatery wakacyjnej. Dokładność powinna wynosić co najmniej 5 miejsc po przecinku.

longitude
(lub geo.longitude)

Number

Długość geograficzna lokalizacji kwatery wakacyjnej. Dokładność powinna wynosić co najmniej 5 miejsc po przecinku.

name

Text

Nazwa informacji o kwaterze wakacyjnej.

Właściwości zalecane
additionalType

Text

Typ informacji o kwaterze wakacyjnej. Oto kilka sugerowanych wartości:

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

Pełne definicje tych wartości znajdziesz w artykule Kategorie firm oferujących noclegi.

address

PostalAddress

Pełny adres fizycznej lokalizacji kwatery wakacyjnej.

Podaj ulicę, miasto, stan lub region oraz kod pocztowy kwatery wakacyjnej. W razie potrzeby podaj numer lokalu lub mieszkania.

Skrytki pocztowe ani inne adresy korespondencyjne nie są uznawane za pełne adresy hoteli.

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

Text

Kraj, w którym znajduje się kwatera wakacyjna z Twojej oferty, podany w postaci dwuliterowego kodu kraju w formacie ISO 3166-1 alfa-2.

address.addressLocality

Text

Miasto podane w ofercie kwatery wakacyjnej

address.addressRegion

Text

Nazwa stanu, regionu lub prowincji.

address.postalCode

Text

Kod pocztowy kwatery wakacyjnej.

address.streetAddress

Text

Pełny adres kwatery wakacyjnej, w tym numer mieszkania lub lokalu (w stosownych przypadkach).

aggregateRating

AggregateRating

Średnia ocena kwatery wakacyjnej jest oparta na wielu ocenach i opiniach. Przestrzegaj wytycznych dotyczących fragmentów opinii i zapoznaj się z listą wymaganych i zalecanych właściwości związanych z oceną zbiorczą.

brand

Brand

Identyfikator marki powiązany z tą usługą. Więcej informacji o wiązaniu usług z markami oraz o tym, jak łączyć ikony marki i wyświetlane nazwy marek z odpowiednimi identyfikatorami marek, znajdziesz w dokumentacji Hotel Center.

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

Time

Godzina, o której użytkownik najwcześniej może zameldować się w hotelu, podana w formacie ISO 8601.

Przykład: 14:30:00+08:00

checkoutTime

Time

Godzina, o której użytkownik najpóźniej może zameldować się w hotelu, podana w formacie ISO 8601.

Przykład: 14:30:00+08:00

containsPlace.additionalType

Text

Rodzaj pokoju, w którym jest ten nocleg. Użyj jednej z tych wartości:

  • EntirePlace
  • PrivateRoom
  • SharedRoom
containsPlace.amenityFeature

Powtórzony amenityFeature

Czy obiekt ma określoną funkcję lub udogodnienia. Przykłady wartości logicznych są zgodne z tym wzorcem:

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "featureName",
  "value": true
}
Wartości logiczne

Użyj jednej z tych wartości dla właściwości amenityFeature.name. Wartości muszą być podane w języku angielskim, nawet w przypadku ofert w języku innym niż angielski.

ac

Czy obiekt jest klimatyzowany.

airportShuttle

Czy gospodarz zapewnia transport między hotelem a lotniskiem lub innymi terminalami.

balcony

Czy obiekt ma balkon.

beachAccess

Czy obiekt ma dostęp do publicznej plaży w pobliżu.

childFriendly

Czy obiekt jest odpowiedni dla dzieci.

crib

Dostępność łóżeczka dziecięcego.

elevator

Czy w obiekcie znajduje się winda.

fireplace

Czy w obiekcie znajduje się kominek.

freeBreakfast

Czy śniadanie jest wliczone w cenę.

gymFitnessEquipment

Czy w hotelu znajduje się siłownia lub sprzęt do ćwiczeń.

heating

Czy obiekt jest ogrzewany.

hotTub

Czy obiekt ma jacuzzi.

instantBookable

Czy w procesie płatności można natychmiast zarezerwować pokój. Alternatywą jest oczekiwanie na zatwierdzenie.

ironingBoard

Czy w obiekcie znajduje się deska do prasowania.

kitchen

Czy w obiekcie znajduje się kuchnia.

microwave

Czy w obiekcie znajduje się kuchenka mikrofalowa.

outdoorGrill

Czy obiekt ma grilla.

ovenStove

Czy w obiekcie znajduje się piec lub kuchenka.

patio

Czy obiekt ma patio.

petsAllowed

Czy gość może przyjechać do hotelu ze zwierzęciem.

pool

Czy obiekt ma basen.

privateBeachAccess

Czy obiekt ma specjalny dostęp do niepublicznej plaży.

selfCheckinCheckout

Czy obiekt umożliwia samodzielne zameldowanie się i wymeldowanie.

smokingAllowed

Czy w pokoju obowiązuje zakaz palenia.

tv

Czy w obiekcie znajduje się telewizor.

washerDryer

Czy w obiekcie znajdują się pralki.

wheelchairAccessible

Dostępność obiektu dla osób na wózkach inwalidzkich.

wifi

Czy w obiekcie jest sieć Wi-Fi.

Wartości inne niż logiczne

W przypadku amenityFeature obsługujemy też te pary inne niż logiczne: name i value. Obie wartości muszą być podane w języku angielskim, nawet w przypadku ofert w języku innym niż angielski.

Wartości inne niż logiczne mają ten wzorzec:

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

internetType

Rodzaj internetu dostępnego w obiekcie. Oto kilka sugerowanych wartości:

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

parkingType

Rodzaj parkingu dostępnego na terenie obiektu. Oto kilka sugerowanych wartości:

  • Free
  • Paid
  • None

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

Rodzaj basenu dostępnego w obiekcie. Oto kilka sugerowanych wartości:

  • Indoor
  • Outdoor
  • None

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

licenseNum

Numer licencji (turystycznej lub firmy) wymagany w przypadku obiektów w określonych regionach świata. Można go powtarzać. Jeśli istnieje kilka licencji, zalecamy dodanie urzędu wystawiającego licencję (na przykład: Paris: 123456ABC).

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

Powtórzony BedDetails.

Informacje o typie i liczbie łóżek w ofercie.

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

Integer

Liczba łóżek w ofercie.

containsPlace.bed.typeOfBed

Text

Rodzaj łóżek w ofercie. Oto kilka sugerowanych wartości:

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

containsPlace.floorSize

QuantitativeValue

Wielkość obiektu. Należy ją określić za pomocą wartości właściwości unitCode:

  • Dla stóp kwadratowych: FTK lub SQFT
  • Dla metrów kwadratowych: MTK lub SQM
"floorSize": {
  "@type": "QuantitativeValue",
  "value" : 75,
  "unitCode": "MTK"
  }
containsPlace.numberOfBathroomsTotal

Integer

Łączna liczba łazienek w ofercie. Przestrzegaj konwencji związanych z nieruchomościami opisanych w dokumentacji organizacji RESO i podawaj prostą sumę liczby łazienek. Na przykład w hotelu z 2 w pełni wyposażonymi łazienkami i 1 połówką łazienki łączna liczba łazienek wynosi 2,5.

containsPlace.numberOfBedrooms

Integer

Łączna liczba sypialni w ofercie.

containsPlace.numberOfRooms

Integer

Łączna liczba pokoi w ofercie.

description

Text

Opis obiektu.

knowsLanguage

Repeated Text

Języki, którymi posługuje się gospodarz. Używaj kodów języków ze standardu IETF BCP 47, np. en-US lub fr-FR.

review

Repeated Review

Co najmniej 1 opinia użytkownika dotycząca oferty. Przestrzegaj wytycznych dotyczących fragmentów opinii i zapoznaj się z listą wymaganych i zalecanych właściwości Review.

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

DateTime

Data rozpoczęcia pobytu autora.

Monitorowanie wyników z elementami rozszerzonymi w Search Console

Search Console to narzędzie, które pomaga monitorować skuteczność stron w wyszukiwarce Google. Aby Twoja witryna mogła pojawiać się w wynikach wyszukiwania Google, nie musisz rejestrować jej w Search Console. Jeśli jednak to zrobisz, lepiej zrozumiesz, jak robot Google widzi Twoją witrynę i jak możesz mu ułatwić jej skanowanie. Zalecamy sprawdzenie danych w Search Console w tych przypadkach:

  1. po pierwszym wdrożeniu uporządkowanych danych,
  2. po opublikowaniu nowych szablonów lub zaktualizowaniu kodu,
  3. podczas okresowego analizowania ruchu.

Po pierwszym wdrożeniu uporządkowanych danych

Gdy Google zindeksuje Twoje strony, poszukaj problemów w odpowiednim raporcie o stanie wyników z elementami rozszerzonymi. W idealnej sytuacji powinno się pojawić więcej elementów prawidłowych, a liczba elementów nieprawidłowych nie powinna się zwiększyć. Jeśli zauważysz problemy w uporządkowanych danych:

  1. Napraw nieprawidłowe elementy
  2. Sprawdź opublikowany adres URL, by zobaczyć, czy problem nadal występuje.
  3. Poproś o weryfikację, korzystając z raportu o stanie.

Po opublikowaniu nowych szablonów lub zaktualizowaniu kodu

Po wprowadzeniu istotnych zmian w witrynie monitoruj wzrost liczby nieprawidłowych elementów w uporządkowanych danych.
  • Możesz zauważyć większą liczbę elementów nieprawidłowych, jeśli wprowadzisz nowy szablon, który nie działa, lub jeśli Twoja witryna wykorzystuje istniejący szablon w nowy i nieprawidłowy sposób.
  • Jeśli okaże się, że jest mniej prawidłowych elementów (ale liczba nieprawidłowych elementów się nie zwiększyła), być może na swoich stronach nie umieszczasz już uporządkowanych danych. Użyj narzędzia do sprawdzania adresów URL, by dowiedzieć się, co jest przyczyną problemu.

Okresowe analizowanie ruchu

Analizuj ruch w wyszukiwarce Google za pomocą raportu skuteczności. Zawarte w nim dane pokazują, jak często Twoja strona wyświetla się w wyszukiwarce jako wynik z elementami rozszerzonymi, jak często użytkownicy ją klikają i jaka jest jej średnia pozycja w wynikach wyszukiwania. Możesz też pobrać te wyniki automatycznie za pomocą interfejsu Search Console API.

Rozwiązywanie problemów

Jeśli masz problem z zastosowaniem lub debugowaniem uporządkowanych danych, skorzystaj z tych rozwiązań: