Lista hoteli to co najmniej jeden plik XML zawierający listę wszystkich hoteli, w przypadku których podasz ceny. Sam plik z listą hoteli nie zawiera informacji o cenach.
Głównym elementem listy hoteli jest element <listings>
, który zawiera elementy <listing>
opisujące Twoje miejsca zakwaterowania.
W ramach początkowej implementacji tworzysz listę hoteli, a potem w ramach regularnej konserwacji dodajesz do niej listę hoteli lub je z niej usuwasz.
Upewnij się, że pliki są zgodne ze wskazówkami dotyczącymi składni.
Na przykład użyj kodowania UTF-8 i określ ten schemat kodowania, dodając atrybut encoding
do tagu XML.
Po utworzeniu listy hoteli możesz ręcznie przesłać ją do Google za pomocą Hotel Center lub hostować ją na serwerze.
Znajdowanie i rozwiązywanie problemów z danymi
Aby znaleźć i rozwiązać problemy z danymi na liście hoteli, zapoznaj się z tymi artykułami:
Wymagania dotyczące informacji o produkcie
Aby kwalifikować się do korzystania z Reklam hoteli w Google, miejsce zakwaterowania na Twojej liście hoteli musi spełniać te wymagania:
- pokoje, w których goście mogą zatrzymać się za opłatą;
- stałą, fizyczną lokalizację, która jest dostępna dla wszystkich;
- Naprawione ściany i hydraulika
- minimalny okres pobytu, który nie przekracza 7 dni.
Typowe przykłady niekwalifikujących się obiektów to rejsy i apartamenty, ponieważ zazwyczaj nie spełniają kryteriów Listing requirements
.
Kwalifikują się domki kempingowe i inne obiekty kempingowe ze stałymi ścianami, hydrauliczną i klimatyzacją (w tym piecami na drewno i podgrzewacze propanowe). Noclegi na świeżym powietrzu, które nie kwalifikują się do tej oferty, to:
- Kempingi, w przypadku których goście zatrzymują się w namiotach
- Parkingi dla kamperów, do których goście przyjeżdżają własnym kamperem
<listings>
<listings>
to główny element listy hoteli, który zawiera element <language>
i co najmniej 1 element <listing>
.
Element <listings>
pojawia się w tym miejscu w hierarchii XML listy hoteli:
+ <listings>
+ <language>
+ <datum>
+ <listing>
Składnia
Element <listings>
ma taką składnię:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="xsi"
xsi:noNamespaceSchemaLocation="schema_xsd">
<language> language_code</language>
<datum> datum_code </datum>
<listing> listing</listing>
...
</listings>
Atrybuty
Element <listings>
ma te atrybuty:
Atrybut | Wymagana? | Opis |
---|---|---|
xmlns:xsi |
Wymagane | Ustaw jako: http://www.w3.org/2001/XMLSchema-instance . |
xsi:noNamespaceSchemaLocation |
Wymagane | Ustaw jako: http://www.gstatic.com/localfeed/local_feed.xsd . |
Elementy potomne
Element <listings>
ma te elementy podrzędne:
Element podrzędny | Wymagana? | Typ | Opis |
---|---|---|---|
<language> | Required | string | Język, w którym napisany jest plik danych. Ustaw wartość tego elementu na
dwuliterowy kod języka. na przykład en w przypadku języka angielskiego. |
<datum> | Optional | enum | Ten element określa odniesienie geodetyczne lub model referencyjny dla współrzędnych szerokości i długości geograficznej podanych w pliku danych. Jeśli nie podasz wartości punktu odniesienia, domyślną wartością tego elementu będzie WGS84 , który jest używany przez większość nowoczesnych urządzeń GPS. Punkt odniesienia w Tokio ma zastosowanie tylko do adresów w Japonii.
Prawidłowe wartości tego elementu to:
WGS84 , nie uwzględniaj elementu <datum> na liście hoteli.
|
<listing> | Required | <listing> |
Co najmniej 1 wpis opisujący każdy hotel w pliku danych. Pamiętaj, że każdy hotel na liście musi mieć unikalny identyfikator dla Twojej witryny. Tego identyfikatora nie należy nigdy ponownie używać. |
Przykłady
Uporządkowany adres
Poniżej znajduje się przykład częściowej listy hoteli z uporządkowanym adresem:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
<id>123abc</id>
<name>Belgrave House</name>
<address format="simple">
<component name="addr1">6 Acacia Ave</component>
<component name="addr2">Floor 5</component>
<component name="city">London</component>
<component name="province">Greater London</component>
<component name="postal_code">SW1W 9TQ</component>
</address>
<country>GB</country>
<latitude>35.070374</latitude>
<longitude>-106.213648</longitude>
<phone type="main">123-456-7890</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
</listing>
...
</listings>
Adres w dowolnej formie
Ten przykład to częściowa lista hoteli z dowolnym adresem:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
<id>123abc</id>
<name>Belgrave House</name>
<address>6 Elm Ave Unit 3, Boston, MA, 02472</address>
<country>US</country>
<latitude>35.070374</latitude>
<longitude>-106.213648</longitude>
<phone type="main">123-456-7890</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
</listing>
...
</listings>
Treść opcjonalna
Ten przykład przedstawia częściową listę hoteli z wizytówką, która zawiera opcjonalną <content>
:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<id>123456</id>
<name>My Apartment</name>
<address format="simple">
<component name="addr1">1 Sandstone Building</component>
<component name="city">Los Angeles</component>
<component name="postal_code">90210</component>
<component name="province">CA</component>
</address>
<country>US</country>
<latitude>40.730610</latitude>
<longitude>-73.935242</longitude>
<phone type="main">12345678</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
<content>
<text type="description">
<link>https://examplelisting.com/listings/12345</link>
<title>3 bedrooms with ocean views</title>
<body>Stay in this newly renovated 3BR house with ocean views.</body>
<date month="7" day="23" year="2023"/>
</text>
<review type="editorial">
<link>https://example.com/reviews/42</link>
<title>A little piece of heaven</title>
<author>EXAMPLE.COM</author>
<rating>8</rating>
<body>This place is really good.</body>
</review>
<review type="user">
<link>https://exampleperson.org/reviews/82</link>
<author>Susan von Trapp</author>
<rating>6</rating>
<body>Not a bad place, but I prefer to be closer to the beach.</body>
<date day="6" month="7" year="2023"/>
<servicedate day="16" month="6" year="2023"/>
</review>
<attributes>
<website>https://hotel.example.com</website>
<client_attr name="rating">8.2</client_attr>
<client_attr name="num_reviews">14</client_attr>
</attributes>
<image type="photo" url="https://image_url">
<link>https://image_url</link>
<title>Main hotel picture</title>
</image>
</content>
</listing>
...
</listings>
<listing>
Definicja hotelu w elemencie listy hoteli <listings>
.
Element <listing>
pojawia się w tym miejscu w hierarchii XML pliku danych z listą hoteli:
+ <listings>
+ <language>
+ <listing>
Składnia
Element <listing>
ma taką składnię:
<?xml version="1.0" encoding="UTF-8"?>
<listings ... >
<listing>
<!-- Specify <listing>'s child elements in the order shown below. -->
<id>hotel_ID</id>
<name>hotel_name</name>
<address>
<component name="addr1">street_address_1</component>
<component name="addr2">street_address_2</component>
<component name="city">city_name</component>
<component name="province">province_name</component>
<component name="postal_code">postal_code</component>
</address>
<!-- You can also define an address freeform, although this is not recommended: -->
<!-- <address>freeform_address</address> -->
<country>country_code</country>
<latitude>hotel_latitude</latitude>
<longitude>hotel_longitude</longitude>
<phone type="[fax|main|mobile|tdd|tollfree]">phone_number</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
<content>content</content>
</listing>
</listings>
Atrybuty
Element <listing>
nie ma atrybutów.
Elementy potomne
Element <listing>
ma te elementy podrzędne:
Element podrzędny | Wymagana? | Typ | Opis |
---|---|---|---|
<id> | Required | string | Unikalny identyfikator hotelu.
Uwaga: ta wartość musi być niepowtarzalna przez cały czas w Twojej witrynie. Nie wykorzystuj go ponownie, ponieważ może to spowodować problemy podczas rozwiązywania problemów z dopasowaniem usług. |
<name> | Required | string | Nazwa hotelu, Przykład: <name>Belgrave House</name> |
<address> | Required | Object or string | Pełna lokalizacja fizyczna hotelu. Ten element przyjmuje tylko 1 atrybut Musisz podać co najmniej ulicę i numer, miasto, stan lub region oraz kod pocztowy hotelu. Używaj elementów podrzędnych
Na przykład: <address format="simple"> <component name="addr1">6 Acacia Ave</component> <component name="addr2">Floor 5</component> <component name="city">London</component> <component name="province">Greater London</component> <component name="postal_code">SW1W 9TQ</component> </address> Możesz również podać adres w formacie dowolnym, ale nie jest to zalecane. Na przykład: <address>6 Elm Ave Unit 3, Boston, MA, 02472</address> Pamiętaj, że skrytki pocztowe ani inne adresy przeznaczone tylko do korespondencji nie są uznawane za pełne adresy fizyczne. |
<country> | Required | string | Kraj, w którym znajduje się ta wizytówka. Wartością musi być dwuliterowy kod kraju.
np. Polska to „PL”, a Niemcy to „DE”. Przykład: <country>US</country> |
<latitude> | Required* | float | Szerokość geograficzna odpowiadająca lokalizacji hotelu, Na przykład: <latitude>37.423738</latitude> Tę wartość można wygenerować za pomocą narzędzi GeoCoding, takich jak Google Maps API. |
<longitude> | Required* | float | Długość geograficzna odpowiadająca lokalizacji hotelu, Na przykład: <longitude>-122.090101</longitude> Tę wartość można wygenerować za pomocą narzędzi GeoCoding, takich jak Google Maps API. |
<location_precision> | Optional | integer | Dokładność lokalizacji nieruchomości wysyłana w metrach, gdy szerokość i długość geograficzna obiektu mają zaciemniony. Zero (0) oznacza, że nie ma zaciemnienia kodu i że widoczna jest dokładna lokalizacja. Uwaga: ten element dotyczy tylko kwater wakacyjnych. |
<phone> | Required* | string | Co najmniej jeden numer kontaktowy hotelu. Jeśli we wpisie podano oddział firmy, podaj numer telefonu oddziału (nie numer centrali). Atrybut
Na przykład: <!-- Singapore (country code +65) --> <phone type="main">+65 6722-2323</phone> <!-- U.S. (country code +1) --> <phone type="fax">+1 408-555-1111</phone> Wymagane minimum to typ |
<category> | Optional | string | Typ obiektu, np. hotel. Do opisania swojej nieruchomości partnerzy mogą używać dowolnych kategorii wewnętrznych, np. „hotele biznesowe”, „ośrodki wypoczynkowe”, „motele” itp. |
<content> |
Optional | <content> |
Opcjonalne informacje związane z wizytówką, takie jak opis, oceny i funkcje usługi. |
* Wymagany jest numer telefonu lub szerokość/długość geograficzna. Zalecamy zdefiniowanie obu.
Przykłady
Uporządkowany adres
Poniżej znajduje się przykład częściowej listy hoteli z uporządkowanym adresem:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
<id>123abc</id>
<name>Belgrave House</name>
<address format="simple">
<component name="addr1">6 Acacia Ave</component>
<component name="addr2">Floor 5</component>
<component name="city">London</component>
<component name="province">Greater London</component>
<component name="postal_code">SW1W 9TQ</component>
</address>
<country>GB</country>
<latitude>35.070374</latitude>
<longitude>-106.213648</longitude>
<phone type="main">123-456-7890</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
</listing>
...
</listings>
Adres w dowolnej formie
Ten przykład to częściowa lista hoteli z dowolnym adresem:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
<id>123abc</id>
<name>Belgrave House</name>
<address>6 Elm Ave Unit 3, Boston, MA, 02472</address>
<country>US</country>
<latitude>35.070374</latitude>
<longitude>-106.213648</longitude>
<phone type="main">123-456-7890</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
</listing>
...
</listings>
Treść opcjonalna
Ten przykład przedstawia częściową listę hoteli z wizytówką, która zawiera opcjonalną <content>
:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<id>123456</id>
<name>My Apartment</name>
<address format="simple">
<component name="addr1">1 Sandstone Building</component>
<component name="city">Los Angeles</component>
<component name="postal_code">90210</component>
<component name="province">CA</component>
</address>
<country>US</country>
<latitude>40.730610</latitude>
<longitude>-73.935242</longitude>
<phone type="main">12345678</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
<content>
<text type="description">
<link>https://examplelisting.com/listings/12345</link>
<title>3 bedrooms with ocean views</title>
<body>Stay in this newly renovated 3BR house with ocean views.</body>
<date month="7" day="23" year="2023"/>
</text>
<review type="editorial">
<link>https://example.com/reviews/42</link>
<title>A little piece of heaven</title>
<author>EXAMPLE.COM</author>
<rating>8</rating>
<body>This place is really good.</body>
</review>
<review type="user">
<link>https://exampleperson.org/reviews/82</link>
<author>Susan von Trapp</author>
<rating>6</rating>
<body>Not a bad place, but I prefer to be closer to the beach.</body>
<date day="6" month="7" year="2023"/>
<servicedate day="16" month="6" year="2023"/>
</review>
<attributes>
<website>https://hotel.example.com</website>
<client_attr name="rating">8.2</client_attr>
<client_attr name="num_reviews">14</client_attr>
</attributes>
<image type="photo" url="https://image_url">
<link>https://image_url</link>
<title>Main hotel picture</title>
</image>
</content>
</listing>
...
</listings>
<content>
Dodaje informacje o wizytówce, takie jak oceny, opinie, udogodnienia i inne szczegóły. Element <content>
jest opcjonalny. W elemencie <content>
wszystkie elementy podrzędne są opcjonalne.
Element <content>
pojawia się w tym miejscu w hierarchii XML pliku danych z listą hoteli:
+ <listings>
+ <language>
+ <listing>
+ <content>
Składnia
Element <content>
ma taką składnię:
<?xml version="1.0" encoding="UTF-8"?>
<listings ... >
<listing>
<content>
<!-- Specify <text>'s child elements in the order shown below. -->
<text type="description">
<link>listing_link</link>
<title>listing_title</title>
<author>listing_author</author>
<body>listing_description</body>
<date month="MM" day="DD" year="YYYY"/>
</text>
<!-- 0 or more reviews: -->
<review type="[editorial|user]">
...
</review>
<!-- 0 or more attributes: -->
<attributes>
<website>https://hotel.example.com</website>
<client_attr name="alternate_hotel_id">alternate_hotel_id</client_attr>
<client_attr name="custom_0">custom_attribute_0</client_attr>
<client_attr name="custom_1">custom_attribute_1</client_attr>
<client_attr name="custom_2">custom_attribute_2</client_attr>
<client_attr name="custom_3">custom_attribute_3</client_attr>
<client_attr name="custom_4">custom_attribute_4</client_attr>
<client_attr name="hotel_brand">hotel_brand</client_attr>
<client_attr name="num_reviews">number_of_reviews</client_attr>
<client_attr name="rating">aggregate_rating</client_attr>
</attributes>
<!-- a picture of the hotel or property-->
<image type="photo" url="https://image_url">
<link>https://image_url</link>
<title>Main Hotel Picture</title>
</image>
</content>
</listing>
...
</listings>
Atrybuty
Element <content>
nie ma atrybutów.
Elementy potomne
Element <content>
ma te elementy podrzędne:
Element podrzędny | Wymagana? | Typ | Opis |
---|---|---|---|
<text |
Optional | Object | Strona internetowa powiązana z wizytówką dostawcy. Ma następujące elementy podrzędne:
Uwaga: te elementy muszą pojawić się w powyższej kolejności. |
<review |
Optional | <review> |
Zawiera opinię użytkownika lub opinię redakcyjną wizytówki. Informacje o firmie mogą zawierać dowolną liczbę opinii obu typów. Nie musisz uwzględniać w elemencie
|
<attributes> | Optional | Object | Zawiera 0 lub więcej elementów podrzędnych <client_attr name="attribute_name">attribute_value<client_attr> Listę i opis elementów podrzędnych znajdziesz tutaj: Wszystkie elementy Jeśli istnieje element podrzędny |
<image> | Optional | Object | Powtórzony tag zawiera szczegółowe informacje o obrazie. |
Przykład
Ten przykład przedstawia częściową listę hoteli zawierającą element <content>
:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<id>123456</id>
<name>My Apartment</name>
<address format="simple">
<component name="addr1">1 Sandstone Building</component>
<component name="city">Los Angeles</component>
<component name="postal_code">90210</component>
<component name="province">CA</component>
</address>
<country>US</country>
<latitude>40.730610</latitude>
<longitude>-73.935242</longitude>
<phone type="main">12345678</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
<content>
<text type="description">
<link>https://examplelisting.com/listings/12345</link>
<title>3 bedrooms with ocean views</title>
<body>Stay in this newly renovated 3BR house with ocean views.</body>
<date month="7" day="23" year="2023"/>
</text>
<review type="editorial">
<link>https://example.com/reviews/42</link>
<title>A little piece of heaven</title>
<author>EXAMPLE.COM</author>
<rating>8</rating>
<body>This place is really good.</body>
</review>
<review type="user">
<link>https://exampleperson.org/reviews/82</link>
<author>Susan von Trapp</author>
<rating>6</rating>
<body>Not a bad place, but I prefer to be closer to the beach.</body>
<date day="6" month="7" year="2023"/>
<servicedate day="16" month="6" year="2023"/>
</review>
<attributes>
<website>https://hotel.example.com</website>
<client_attr name="rating">8.2</client_attr>
<client_attr name="num_reviews">14</client_attr>
</attributes>
<image type="photo" url="https://image_url">
<link>https://image_url</link>
<title>Main hotel picture</title>
</image>
</content>
</listing>
...
</listings>
<review>
zawiera opinię użytkownika lub opinię redakcyjną. Nie musisz uwzględniać wszystkich opinii o firmie w elemencie <listing>
. Ten element służy do uwzględniania wybranych opinii, które wskazują na cechy lub jakość danej strony.
Element <review>
pojawia się w tym miejscu w hierarchii XML pliku danych z listą hoteli:
+ <listings>
+ <language>
+ <listing>
+ <content>
+ <review>
Składnia
Element <review>
ma taką składnię:
<?xml version="1.0" encoding="UTF-8"?>
<listings ... >
<listing>
<content>
...
<!-- Specify <review>'s child elements in the order shown below. -->
<review type="editorial">
<link>review_link</link>
<title>review_title</title> <!-- Title is for reviews of type "editorial" only -->
<author>review_author</author>
<rating>review_rating</rating>
<body>review_text</body>
<date>review_date</date>
<servicedate>review_servicedate</servicedate>
</review>
<review type="user">
<link>review_link</link>
<author>review_author</author>
<date month="MM" day="DD" year="YYYY"/> <!-- Date is for reviews of type "user" only -->
<servicedate month="MM" day="DD" year="YYYY"/> <!-- Service Date is for reviews of type "user" only -->
<rating>review_rating</rating>
<body>review_text</body>
</review>
</content>
</listing>
</listings>
Atrybuty
Element <review>
ma te atrybuty:
Atrybut | Wymagana? | Opis |
---|---|---|
type | Required | Typ opinii. Ustaw jedną z tych wartości:
|
Elementy potomne
Element <review>
ma te elementy podrzędne:
Element podrzędny | Wymagana? | Typ | Opis |
---|---|---|---|
<link> | Optional | string | Link do opinii. Dodaj do tego elementu „http://” lub „https://”. |
<title> | Optional | string | (Tylko opinie redakcyjne) Tytuł opinii. |
<author> | Optional | string | Autor opinii, na przykład „Zuzanna von Trapp”. Może to być też nazwa witryny lub publikacji, w której pojawia się opinia, o ile nie jest ona uznawana za wiarygodną. |
<rating> | Optional | string | Liczba zmiennoprzecinkowa od 0 do 10 (włącznie) określająca wynik opinii. np. „8.9”. |
<body> | Optional | string | Tekst opinii. Ten element nie powinien zawierać kodu HTML. |
<date month="MM" day="DD" year="YYYY"/> | Optional | Object | (Tylko opinie użytkowników) Data opinii, którą określasz za pomocą
tych atrybutów tego elementu:
Na przykład 7 czerwca 2023 r. wygląda tak: <date month="6" day="7" year="2023"/> |
<servicedate month="MM" day="DD" year="YYYY"/> | Optional | Object | (Dotyczy tylko opinii użytkowników) Data wizyty autora opinii w opinii. Ma taki sam format jak <data> powyżej.
Na przykład 7 czerwca 2023 r. wygląda tak: <servicedate month="6" day="7" year="2023"/> Opinie, w których nie wypełniono co najmniej miesiąca i roku powiązanego z usługą <servicedate>, mogą nie być wyświetlane. Dzień nie jest wymagany. |
Pamiętaj, że <title>
jest prawidłowym elementem podrzędnym elementu <review>
tylko wtedy, gdy element type
opinii ma wartość editorial
, a pole <date>
jest prawidłowe tylko wtedy, gdy type
ma wartość user
.
Przykład
Ten przykład przedstawia częściową listę hoteli z wizytówką, która zawiera opinię redakcyjną i opinię użytkownika:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<id>123456</id>
<name>My Apartment</name>
<address format="simple">
<component name="addr1">1 Sandstone Building</component>
<component name="city">Los Angeles</component>
<component name="postal_code">90210</component>
<component name="province">CA</component>
</address>
<country>US</country>
<latitude>40.730610</latitude>
<longitude>-73.935242</longitude>
<phone type="main">12345678</phone>
<category>hotel</category> <!-- You can use whatever property type categories you wish -->
<content>
<text type="description">
<link>https://examplelisting.com/listings/12345</link>
<title>3 bedrooms with ocean views</title>
<body>Stay in this newly renovated 3BR house with ocean views.</body>
<date month="7" day="23" year="2023"/>
</text>
<review type="editorial">
<link>https://example.com/reviews/42</link>
<title>A little piece of heaven</title>
<author>EXAMPLE.COM</author>
<rating>8</rating>
<body>This place is really good.</body>
</review>
<review type="user">
<link>https://exampleperson.org/reviews/82</link>
<author>Susan von Trapp</author>
<rating>6</rating>
<body>Not a bad place, but I prefer to be closer to the beach.</body>
<date day="6" month="7" year="2023"/>
<servicedate day="16" month="6" year="2023"/>
</review>
<attributes>
<website>https://hotel.example.com</website>
<client_attr name="rating">8.2</client_attr>
<client_attr name="num_reviews">14</client_attr>
</attributes>
<image type="photo" url="https://image_url">
<link>https://image_url</link>
<title>Main hotel picture</title>
</image>
</content>
</listing>
...
</listings>
<attributes>
Tagu <attributes>
można używać do opisywania udogodnień w obiekcie oraz klasyfikowania jego ocen i opinii.
+ <listings>
+ <language>
+ <listing>
+ <content>
+ <review>
+ <attributes>
Elementy potomne
Element podrzędny | Wymagana? | Opis | |
---|---|---|---|
<website> | Optional | Główna witryna hotelu. Jeśli występuje, musi znajdować się przed pierwszym elementem <client_attr> . Przykład:
<website>https://hotel.example.com</website> |
|
<client_attr name="attribute_name"> | Optional | Dodatkowa cecha lub „atrybut” właściwości, którą można określić za pomocą obsługiwanych właściwości
attribute_name lub
attribute_name w przypadku kwater wakacyjnych.
|
Wartości parametru placeholder_name
W tabeli poniżej znajdziesz prawidłowe wartości parametru attribute_name w elemencie <client_attr name="attribute_name">.
Wartości dla: attribute_name |
Opis | Prawidłowe wartości treści |
---|---|---|
alternate_hotel_id | Alternatywny identyfikator miejsca zakwaterowania. Posiadanie osobnych identyfikatorów jest przydatne, jeśli potrzebujesz jednego identyfikatora obiektu na potrzeby informacji z pliku danych, a drugiego dla systemu rezerwacji. | Dowolna wartość ciągu znaków |
custom_[0-4] | Dowolny atrybut niestandardowy typu ciągu znaków. Nie są one widoczne dla użytkowników. | Dowolna wartość ciągu znaków |
hotel_brand | Marka, do której należy ten hotel, Na przykład „Marriott” lub „Hilton”. Te informacje nie są widoczne dla użytkowników, ale mogą służyć do grupowania hoteli. | Dowolna wartość ciągu znaków |
lodging | Zakodowana reprezentacja wszystkich pól dostępnych w protocie Lodging . |
Ciąg znaków zakodowany w Base64 zakodowanego protokołu Lodging |
num_reviews | Liczba opinii o firmie. | Dowolna nieujemna liczba całkowita. |
rating | Liczba zmiennoprzecinkowa reprezentująca zbiorczą ocenę właściwości. | Zwykle mieści się w zakresie 0–5, 0–10 lub 0–100, ale możesz użyć dowolnego zakresu, który reprezentuje Twój system ocen. |
Wartości zmiennejattribute_name (nazwa atrybutu kwatery wakacyjne)
Zapoznaj się z atrybutami dotyczącymi kwater wakacyjnych i przykładowym plikiem XML.
<image>
+ <listings>
+ <language>
+ <listing>
+ <content>
+ <review>
+ <attributes>
+ <image>
Obrazy służą do pokazania miejsca zakwaterowania w identyfikatorze oferty. Wszystkie używane obrazy muszą być zgodne z tymi wytycznymi:
- Zalecany współczynnik proporcji obrazów to 4:3.
- Adres URL obrazu musi być dostępny dla robota Googlebot Image_1.
Jeśli witryna zawiera plik robots.txt na poziomie głównym, sprawdź, czy zawiera on jedną z tych 2 opcji:
Umożliwia robotowi Googlebot indeksowanie treści w Twojej witrynie, w tym obrazów.
- User-agent: Googlebot
- Allow: /
Zezwala robotowi indeksującemu obrazy Googlebot na indeksowanie obrazów w Twojej witrynie.
- User-agent: Googlebot-Image
- Allow: /
Niedozwolone są zrzuty ekranu z obrazami lub stronami internetowymi. Muszą to być oryginalne i rzeczywiste obrazy lub fotografie.
Atrybuty
"ad"
, jeśli obraz jest reklamą"menu"
, jeśli obraz przedstawia menu restauracji"photo"
, jeśli obraz jest zdjęciem firmy
Nazwa atrybutu | Wymagana? | Format | Opis |
---|---|---|---|
type | Required | Text | Dozwolone są następujące obrazy: |
url | Required | Text | Adres URL obrazu w pełnym rozmiarze. Użyj atrybutu url, aby określić obraz, który zostanie użyty na tej stronie. |
width | Required | A non-negative integer | Szerokość obrazu w pikselach (zalecamy więcej niż 720 pikseli) |
height | Required | A non-negative integer | Wysokość obrazu w pikselach (zalecamy więcej niż 720 pikseli) |
Elementy potomne
Element podrzędny | Wymagana? | Opis |
---|---|---|
<link> | Wymagana, ale wymagana w przypadku lokalnych wizytówek zdjęć. | Ten tag zawiera prawidłowy i aktualny adres URL strony w Twojej witrynie, na której znajduje się odpowiedni obraz. Nie zawiera adresu URL samego obrazu.
Przykład:<link><http://www.example.com/magic_pizza/></link> |
<title> | Wysłano prośbę | Ten tag zawiera tytuł obrazu. Przykład:
<title>"Luxury Apartment"</title> |
<author> | Niewymagane | Imię i nazwisko autora treści. Wartością może być nazwa użytkownika lub imię i nazwisko w formacie „Imię Nazwisko”. |
<date> | Wymagane | Ten tag określa datę utworzenia elementu treści. Musisz wpisać rok, miesiąc i dzień, jak w tym przykładzie: <date month="6" day="7" year="2023"/> |
Przykład
Poniżej znajduje się przykład częściowej listy hoteli z tagami graficznymi:
<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
<language>en</language>
<listing>
<content>
<review>
</review>
<attributes>
</attributes>
<image type="photo" url="https://image_url" width="400" height="300">
<link>https://image_url</link>
<title>Apartment at Sandstone</title>
<author>Jessica Landlord</author>
<date month="6" day="7" year="2023"/>
</image>
</content>
</listing>
...
</listings>
Wytyczne dotyczące składni
Tworząc listę hoteli w formacie XML, przestrzegaj tych wytycznych:
Zweryfikuj pliki XML z listą hoteli za pomocą schematu XSD Google.
Użyj kodowania UTF-8. Określ ten schemat kodowania, dodając atrybut
encoding
do tagu XML, jak pokazano w poniższych przykładach.W pliku danych możesz określić wartości danych za pomocą sekcji
CDATA
. Jeśli używasz sekcjiCDATA
, nie zmieniaj znaczenia znaków specjalnych.Użyj kodów zmiany znaczenia w przypadku wartości danych, które nie znajdują się w sekcjach
CDATA
, w tym adresów URL. Do reprezentowania tych znaków specjalnych możesz użyć zarówno kodu elementu, jak i kodu znaku. W poniższej tabeli znajdziesz typowe kody elementów i znaków, których możesz użyć:Znak Element Kod znaku Znak & (&) & & Pojedynczy cudzysłów (') ' ' Podwójny cudzysłów (") " " Większe niż (>) > \62 Mniejsze niż (<) < \60 Pomiń elementy XML, które nie zawierają danych. Jeśli na przykład nie masz szerokości i długości geograficznej hotelu, nie dodawaj pustych elementów
<latitude/>
i<longitude/>
.Pod żadnym pozorem nie używaj kodu HTML w elementach XML (nawet jeśli stosujesz znaki zmiany znaczenia).
Aby zweryfikować plik danych przed jego przesłaniem, możesz użyć lokalnego pliku danych XSD http://www.gstatic.com/localfeed/local_feed.xsd.
Aby korzystać z komentarzy w kanale, umieść go w tagach
<!--
i-->
, jak w tym przykładzie:<!-- This is a comment -->
Pamiętaj, aby zamknąć element
<date>
w elemencie<review>
użytkownika. Na przykład:<date day="2" month="12" year="2017"/>