Реклама отелей и бесплатные ссылки для бронирования содержат ссылки на целевые страницы, где пользователи могут забронировать номера. Вы можете указать, как Google должен создавать ссылку, чтобы она содержала всю дополнительную информацию о пользователе и его маршруте. Например, в URL можно включить идентификатор гостиницы, язык, коды валют и даты заезда.
Обзор
URL целевой страницы определяется в файле целевых страниц. При показе объявления или бесплатной ссылки для бронирования динамическая информация в URL заменяется фактическими значениями. Чтобы добавить динамические значения в URL целевых страниц, используйте следующий синтаксис:
<URL>https://partner_url?param_id=(variable_name)</URL>
В примере ниже показан URL, в котором вместо идентификатора гостиницы и маршрута используются названия переменных Google:
Пример 1
<URL>https://www.partnerdomain.com?hotelID=(PARTNER-HOTEL-ID)&checkinDay=(CHECKINDAY)&checkinMonth=(CHECKINMONTH)&checkinYear=(CHECKINYEAR)&nights=(LENGTH)</URL>
Пример 2
<URL>https://www.partnerdomain.com/hotel/(PARTNER-HOTEL-ID)&checkinDay=(CHECKINDAY)&checkinMonth=(CHECKINMONTH)&checkinYear=(CHECKINYEAR)&nights=(LENGTH)</URL>
Когда ссылка на целевую страницу создается для страницы результатов поиска, Google заменяет переменные фактическими значениями, чтобы URL содержал динамическую информацию. Например, если пользователь бронирует номер в отеле № 42 на шесть ночей, начиная с 23 мая 2023 г., Google преобразует предыдущую ссылку следующим образом:
https://www.partnerdomain.com?hotelID=42&checkinDay=23&checkinMonth=05&checkinYear=2023&nights=6
Значения, которые Google присваивает переменным в строке запроса, зависят от соответствующих данных в фиде с тарифами отелей, фиде со списком отелей и пользовательских настройках.
Например,значение переменной LENGTH присваивается элементу <Nights> из фида с ценами для связанной программы пребывания. Аналогично значение переменной PARTNER-HOTEL-ID определяется в элементе <id> из фида со списком отелей, который соответствует критериям поиска пользователя.
Некоторые переменные являются подмножествами элементов фида с ценами. Например, переменные CHECKINDAY, CHECKINMONTH и CHECKINYEAR извлекаются из одного элемента <Checkin> в фиде с ценами. Другие переменные рассчитываются на основе региональных и других настроек клиента.
Дополнительную информацию об источниках значений переменных можно найти в статьях Общие сведения о ценах и Список гостиниц.
Переменные URL
В таблице ниже описаны переменные, которые можно использовать для создания URL целевой страницы.
| Переменная | Рекомендуемые и необязательные элементы | Описание |
|---|---|---|
| ADVANCE-BOOKING-WINDOW | Optional | Количество дней до даты заезда, за которое было оформлено бронирование, в часовом поясе гостиницы на момент бронирования. например 36 (2-е издание). |
| ALTERNATE-HOTEL-ID | Recommended (if you have separate IDs to identify properties versus booking engines) | Альтернативный идентификатор отеля. Название атрибута указывается в фиде со списком отелей. Это удобно, если вам нужны разные идентификаторы для фида и системы бронирования. |
| CAMPAIGN-ID | Recommended | Идентификатор кампании Google Рекламы, которую вы хотите связать с URL. Если клик не связан с кампанией Google Рекламы, это поле остается пустым. |
| CHECKINDAY | Recommended | Двузначное число, обозначающее день, которое задано в элементе <Checkin> фида с тарифами отелей. Пример: 20. |
| CHECKINDAY-OF-WEEK | Optional | День недели (от Monday до Sunday), в который происходит заезд, в часовом поясе гостиницы. Пример: Tuesday. |
| CHECKINMONTH | Recommended | Двузначное число, обозначающее месяц, которое задано в элементе <Checkin> фида с тарифами отелей. Пример: 05. |
| CHECKINYEAR | Recommended | Год в четырехзначном формате, указанный в элементе <Checkin> фида с тарифами отелей. Пример: 2023. |
| CHECKOUTDAY | Recommended | Двузначное число, обозначающее день, которое рассчитывается на основе элементов <Nights> и <Checkin> фида с тарифами отелей. Пример: 26. |
| CHECKOUTMONTH | Recommended | Двузначное число, обозначающее месяц, которое рассчитывается на основе элементов <Nights> и <Checkin> фида с тарифами отелей. Пример: 05. |
| CHECKOUTYEAR | Recommended | Четырехзначное число, обозначающее год, которое рассчитывается на основе элементов <Nights> и <Checkin> фида с тарифами отелей. Пример: 2023. |
| CHILD-AGE | Recommended (must be provided for child occupancy pricing) | Максимальный возраст каждого ребенка, указанный в элементах
<Child "age"> фида с ценами.
Эту переменную необходимо использовать вместе с условным блоком FOR-EACH-CHILD-AGE. |
| CHILD-INDEX | Optional | Переменная цикла с индексом 0, представляющая счетчик для каждого ребенка и его возраста, указанных в маршруте. Эта переменная не является обязательной и может использоваться только в сочетании с условным блоком FOR-EACH-CHILD-AGE.
|
| CLICK-TYPE | Optional | Указывает, нажал ли пользователь на стандартную цену или на цену за пакет услуг. Возможные значения:
|
| CLOSE-RATE-RULE-IDS | Optional (only applies if you are using conditional or private rates) | Список идентификаторов правил для недоступных тарифов, разделенный запятыми. Эти тарифы могли бы быть доступны, если бы пользователь выполнил незначительное действие. Обратите внимание, что идентификаторы правил назначения цен для закрытых цен всегда указываются здесь, когда пользователю показывается соответствующий вариант интерфейса. |
| Optional | Устарело. Значения дополнительных полей, заданные в элементе <Result>. Ограничение на количество символов в каждом поле – 200. Подробнее о сообщениях-транзакциях… Специальные поля недоступны при использовании ARI.
Переменные CUSTOM указываются только в том случае, если вы отправляете цены в сообщении-транзакции.
|
|
| DATE-TYPE | Optional | Указывает, выбрал ли пользователь дату по умолчанию или указал конкретную дату в поиске. Возможные значения:
|
| GOOGLE-ADS-CLICK-SOURCE | Optional | Указывает, что источником клика является Google Реклама. Возможные значения:
Примечание. Если клик был выполнен в Google Поиске, а не в Google Рекламе, этот параметр будет пустым. |
| GOOGLE-SITE | Optional | Ресурс Google, на котором пользователь просматривал данные о ценах в вашей гостинице.
Возможные значения:
|
| LENGTH | Recommended | Длительность пребывания в ночах, заданная элементом <Nights> в фиде с тарифами отелей. Пример: 3. |
| MODIFICATION-IDS | Optional | Если вы используете изменение цен ARI, значением этой переменной будет атрибут |
| NUM-ADULTS | Recommended (must be used with the
NUM-CHILDREN or FOR-EACH-CHILD-AGE condition)
|
Количество взрослых гостей, указанное пользователем в маршруте.
Эту переменную необходимо использовать в сочетании с NUM-CHILDREN, FOR-EACH-CHILD-AGE или обеими переменными. |
| NUM-CHILDREN | Recommended | Количество детей (от 0 до 17 лет), указанное пользователем в маршруте. Чтобы успешно участвовать в маршрутах с детьми, необходимо указать NUM-CHILDREN, FOR-EACH-CHILD-AGE или оба этих параметра. |
| NUM-GUESTS | Recommended (if you don't send child occupancy pricing) | Общее количество гостей, как взрослых, так и детей, указанное пользователем в маршруте. Это значение представляет собой сумму значений NUM-ADULTS и NUM-CHILDREN. Чтобы охватить как можно больше пользователей, настоятельно рекомендуем использовать и NUM-ADULTS, и NUM-CHILDREN. |
| PACKAGE-ID | Recommended (applies if you use Room Bundles) | Уникальный идентификатор пакета в фиде с тарифами отелей. Для стандартного пакета идентификатор пакета – это значение элемента <PackageID> в блоке <Result>. Для пакета услуг идентификатор пакета – это значение элемента <PackageID> в блоках <RoomBundle> или <PackageData> сообщения-транзакции. |
| PARTNER-CURRENCY | Optional | Трехбуквенный код валюты, заданный атрибутом currency элемента <Baserate> в фиде с тарифами отелей. Примеры: USD или CAD
. |
| PARTNER-HOTEL-ID | Recommended | Уникальный идентификатор гостиницы, заданный элементом <id> в фиде со списком отелей. |
| PARTNER-ROOM-ID | Recommended (applies if you use Room Bundles) | Уникальный идентификатор номера в фиде с тарифами отелей. Для стандартного номера идентификатор – это значение элемента <RoomID> в блоке <Result>. Для пакета номеров идентификатор номера – это значение, присвоенное элементу <RoomID> в блоках <RoomBundle> или <RoomData> в сообщении-транзакции. |
| Optional (only applies to Ads) | Устарело. По умолчанию получает значение commission. Если вы пользуетесь услугами агентства, взимающего комиссию, вместо него указывается назначенный Google номер IATA (например, 01234567). Чтобы изменить формат номера IATA или стандартной строки, обратитесь к техническому менеджеру аккаунта. |
|
| PRICE-DISPLAYED-FEES | (Optional) | Сумма комиссий, включенных в общую сумму налогов и комиссий, указываемая в местной валюте пользователя.
Значение PRICE-DISPLAYED-FEES – это значение элемента <Fee> в сообщении-транзакции. Для ARI это рассчитанная сумма комиссии на основе сообщения TaxFeeInfo. Пример: 60.14. |
| PRICE-DISPLAYED-TAX | (Optional) | Сумма налога, указываемая в местной валюте пользователя.
Значение PRICE-DISPLAYED-TAX – это значение элемента <Tax> в фиде с тарифами отелей. Пример: 3.14. |
| PRICE-DISPLAYED-TOTAL | (Optional) | Итоговая цена за номер, указываемая в местной валюте пользователя. Значение PRICE-DISPLAYED-TOTAL – это сумма элементов <Baserate>, <Tax> и <OtherFees> из фида с тарифами отелей.
Пример: 152.13. |
| PROMO-CODE | (Optional) | Если вы используете промоакции ARI, значение этой переменной присваивается атрибуту Если вы используете
правила тарифов, значение этой переменной присваивается элементу |
| RATE-PLAN-ID | Recommended (only applies if you use RoomBundles) | Идентификатор, заданный элементом <RatePlanID> в блоке <RoomBundle> фида с ценами. <RatePlanID> – это уникальный идентификатор для комбинации номера и пакета. Чтобы обеспечить оптимальную производительность, его длина не должна превышать 50 символов. Подробнее
о наборах для переговорных комнат… |
| RATE-RULE-ID | Recommended (only applies if you use conditional rates or private rates) | Идентификатор, заданный атрибутом rate_rule_id в блоке <Rate> фида с ценами. Подробнее
о специальных ценах…
Примечание. Показываются только специальные цены или частные цены, которые не скрыты. |
| USER-COUNTRY | Recommended | Двухбуквенный код страны, указывающий местоположение пользователя. Эта информация извлекается из настроек клиента пользователя. Примеры: US или FR. |
| USER-CURRENCY | Recommended | Трехбуквенный код валюты, соответствующий местной валюте пользователя. Значение переменной USER-CURRENCY определяется на основе настроек клиента пользователя. Примеры: USD или CAD . |
| USER-DEVICE | Recommended | Тип устройства пользователя. Возможные значения USER-DEVICE:
Значение переменной |
| USER-LANGUAGE | Recommended | Двухбуквенный код языка по стандарту ISO 639-1, который определяет язык объявления или бесплатной ссылки для бронирования. Значение переменной USER-LANGUAGE определяется на основе настроек клиента пользователя. Примеры: en или fr. |
| USER-LIST-ID (определено в Google Рекламе) | Optional (only applies if you use Audience Lists in Google Ads) | Идентификатор списка пользователей Google Рекламы, который содержит список аудитории или информацию о пользователях. Списки аудиторий используются в качестве основы для настройки корректировок ставок. Если пользователь входит в несколько списков аудитории, выбирается список с наибольшей корректировкой ставок. Если у нескольких аудиторий корректировка ставок одинакова, то одна из них выбирается случайным образом. |
| VERIFICATION | Optional | Логическое значение, которое подтверждает, что ссылка была создана Google для тестирования или проверки. Если ссылка была создана Google для тестирования или проверки, то значение будет true, в противном случае – false.
|
Условная логика в URL
Вы можете использовать специальные директивы в элементе <URL> файла целевых страниц, чтобы условно создавать конечные точки.
Условная логика поддерживает следующие операторы:
if_statement: если
true, то в URL вставляются значения, соответствующие этому условию. В противном случае вставляются значения, соответствующие директивеELSE.for_statement – создает условие цикла FOR, которое повторяется для указанного количества значений.
Операторы IF и FOR включают следующее:
| Условие | Рекомендуемые и необязательные элементы | Описание |
|---|---|---|
| IF-AD-CLICK (только для рекламы отелей) | Optional | Возвращает true, если клик пользователя был сделан по объявлению.
Принимает значение false, если пользователь перешел по бесплатной ссылке для бронирования. |
| IF-CLICK-TYPE-HOTEL | Optional | Если пользователь нажал на объявление гостиницы, возвращает true, в противном случае – false. |
| IF-CLICK-TYPE-ROOM | Optional | Если пользователь нажал на объявление со
списком характеристик номера, возвращается значение true, в противном случае – false. |
| IF-CLOSE-RATE-RULE-IDS | Optional | Возвращает true, если одна или несколько специальных цен недоступны, поскольку пользователь не соответствует требованиям. В противном случае возвращает false. По умолчанию это true, если пользователю был показан интерфейс с частным тарифом
. |
| IF-DEFAULT-DATE | Optional | Если пользователь нажал на объявление гостиницы, в котором использовались даты по умолчанию, возвращается значение true, в противном случае – false. |
| IF-HOTEL-CAMPAIGN | Optional | Если клик пользователя был сделан в кампании для гостиниц, возвращается значение true, в противном случае – false. Это различие помогает партнерам, у которых в Google Рекламе есть несколько типов кампаний, распределять атрибуцию. |
| IF-MODIFICATION-IDS | Optional | Возвращает true, если пользователь нажал на цену, измененную с помощью ARI, и false в противном случае. |
| (только для рекламы отелей) | Recommended (if you use pay-per-stay Google Ads campaigns) | Устарело. Для гостиниц, участвующих в программе комиссий с оплатой за проживание, принимает значение true, в противном случае – false. |
| IF-PROMO-CODE | Optional | Возвращает true, если пользователь нажал на цену, основанную на промоакции ARI или правиле тарифа с заданным PromoCode. В противном случае возвращает false. |
| IF-PROMOTED (только для рекламы отелей) | Recommended (if you use Promoted hotels) | Если пользователь нажал на объявление для продвижения объекта, возвращается значение true, в противном случае – false. |
| IF-RATE-RULE-ID | Optional | Если пользователь выбрал специальную цену
, возвращает значение true, в противном случае – false. |
| IF-USER-LIST-ID (определено в Google Рекламе) | Optional | Возвращает true, если пользователь входит в список клиентов Google Рекламы, идентификатор которого вы указали при настройке мультипликаторов ставок для списков аудиторий. В противном случае возвращает false. |
| IF-VERIFICATION | Optional | Если ссылка была создана Google для тестирования или проверки, возвращается значение true, в противном случае – false. |
| ELSE | Recommended (if you use any conditional IF statements) | Если предыдущее условие не выполняется, то в URL вставляются значения, соответствующие этому условию. |
| END-IF | Optional (required if you have any IF conditional statements) | Завершает условный блок оператора IF. |
| FOR-EACH-CHILD-AGE | Optional (required for child occupancy pricing) | Выполняется один раз для каждого элемента
<Child "age"> в фиде с ценами. Например, если <OccupancyDetails> включает два элемента – <Child age="17"> и <Child age=
"17">, то директива выполняется дважды. |
| END-FOR-EACH | Optional (required if using FOR-EACH block) | Завершает условный блок оператора FOR-EACH. |
Пример использования IF-AD-CLICK
Вы можете создать условный блок, который будет проверять, нажал ли пользователь на объявление или бесплатную ссылку для бронирования, чтобы перенаправить его на целевую страницу.
В примере ниже эта директива используется в файле целевой страницы:
<URL>https://partner.com?hid=(PARTNER-HOTEL-ID)(IF-AD-CLICK)&adType=1(ELSE)&adType=0(ENDIF)</URL>
В этом примере, если пользователь не нажал на объявление, URL будет выглядеть следующим образом:
https://www.partner.com?hid=123&adType=0
Если пользователь нажал на объявление, то URL будет выглядеть следующим образом:
https://www.partner.com?hid=123&adType=1
Пример использования IF-CLICK-TYPE-HOTEL
Вы можете создать условный блок, который проверяет, выбрал ли пользователь гостиницу без явного указания пакета номеров. Значение элемента <RatePlanID> в блоке <Room Bundle> сообщения-транзакции будет установлено равным цене неявно связанного пакета услуг, который выбрал пользователь.
В примере ниже эта директива используется в файле целевых страниц:
<URL>https://partner.com/(IF-CLICK-TYPE-HOTEL)landing(ELSE)landing_room(ENDIF)?hid=(PARTNER-HOTEL-ID)</URL>
В этом примере, если пользователь не выбрал пакет Room Bundle, результатом будет следующий URL:
https://partner.com/landing?hid=123
Если пользователь выбрал пакет услуг, URL будет выглядеть следующим образом:
https://partner.com/landing_room?hid=123
Пример использования IF-CLICK-TYPE-ROOM
Вы можете создать условный блок, который проверяет, выбрал ли пользователь RoomBundle.
В примере ниже эта директива используется в файле целевых страниц:
<URL>https://partner.com/(IF-CLICK-TYPE-ROOM)landing_room(ELSE)landing(ENDIF)?hid=(PARTNER-HOTEL-ID)</URL>
В этом примере, если пользователь не выбрал пакет номеров, результатом будет следующий URL:
https://partner.com/landing?hid=123
Если пользователь выбрал пакет номеров, будет получен следующий URL:
https://partner.com/landing_room?hid=123
Пример использования IF-CLOSE-RATE-RULE-IDS
Вы можете создать условный блок, который проверяет, есть ли у пользователя специальная сниженная цена или эксклюзивные цены для участников программы лояльности.
В следующем примере эта директива используется в файле целевых страниц:
<URL>https://partner.com?hid=(PARTNER-HOTEL-ID)(IF-CLOSE-RATE-RULE-IDS)&rate_rule=(CLOSE-RATE-RULE-ID)(ELSE)(ENDIF)</URL>
В этом примере, если пользователь не соответствует условиям для получения частного тарифа, результатом будет следующий URL:
https://partner.com?hid=123
Если пользователь является участником программы лояльности и имеет право на эксклюзивную цену, результатом будет следующий URL:
https://partner.com?hid=123&rate_rule=sample_qr
Ниже приведен пример логики специальной цены с датами заезда и выезда, а также сведениями о количестве гостей. В нем используются вложенные условия IF, которые позволяют проверить, имеет ли пользователь право на частную цену, специальную частную цену или общедоступную цену.
<URL>https://partner.com/?hid=(PARTNER-HOTEL-ID)&checkinDay=(CHECKINDAY)&checkinMonth=(CHECKINMONTH)&checkinYear=(CHECKINYear)&checkoutDay=(CHECKOUTDAY)&checkoutMonth=(CHECKOUTMONTH)&checkoutYear(CHECKOUTYear)&num_adults=(NUM-ADULTS)(IF-CLOSE-RATE-RULE-IDS)&promo_type=member_signup&rate_rule=(CLOSE-RATE-RULE-ID)(ELSE)(IF-RATE-RULE-ID)&promo_type=conditional&rate_rule=(RATE-RULE-ID)(ELSE)promo_type=public(ENDIF)(ENDIF)</URL>
Если пользователю доступна закрытая цена, URL будет выглядеть следующим образом:
https://partner.com/?hid=123&checkinDay=05&checkinMonth=03&checkinYear=2026&checkoutDay=07&checkoutMonth=03&checkoutYear=2026&num_adults=2&promo_type=member_signup&rate_rule=sample_qr
Если пользователь соответствует условиям для получения условной закрытой цены, то будет получен следующий URL:
https://partner.com/?hid=123&checkinDay=05&checkinMonth=03&checkinYear=2026&checkoutDay=07&checkoutMonth=03&checkoutYear=2026&num_adults=2&promo_type=conditional&rate_rule=US_users
Если пользователь соответствует условиям для получения общедоступной цены, результатом будет следующий URL:
https://partner.com/?hid=123&checkinDay=05&checkinMonth=03&checkinYear=2026&checkoutDay=07&checkoutMonth=03&checkoutYear=2026&num_adults=2&promo_type=public
Пример использования IF-DEFAULT-DATE
Используйте условный оператор IF-DEFAULT-DATE, чтобы задать параметр, не связанный с датой, который ваш сайт сможет использовать для запуска пользовательского поведения, если пользователь не выбрал дату.
В следующем примере проверяется, использовалась ли дата по умолчанию:
<URL>https://partner.com?hotelID=(PARTNER-HOTEL-ID)&checkinDay=(CHECKINDAY)&checkinMonth=(CHECKINMONTH)&checkinYear=(CHECKINYEAR)&nights=(LENGTH)(IF-DEFAULT-DATE)&popup_datepicker=true(ELSE)&popup_datepicker=false(ENDIF)</URL>
В этом примере, если пользователь не выбрал дату, результат может быть похож на следующий URL, который показывает выбор даты по умолчанию:
https://partner.com?hotelID=123&checkinDay=23&checkinMonth=05&checkinYear=2023&nights=1&popup_datepicker=true
Если пользователь выбрал дату, результат может быть похож на следующий URL-адрес, в зависимости от выбранного маршрута:
https://partner.com?hotelID=123&checkinDay=23&checkinMonth=05&checkinYear=2023&nights=2&popup_datepicker=false
Пример использования IF-HOTEL-CAMPAIGN (клики по рекламе отелей и бесплатным ссылкам для бронирования)
Вы можете создать условный блок, который проверяет, нажал ли пользователь на объявление из кампании для гостиниц.
В примере ниже эта директива используется в файле целевой страницы:
<URL>https://partner.com?hotelID=(PARTNER-HOTEL-ID)(IF-HOTEL-CAMPAIGN)&hotel_campaign=(CAMPAIGN-ID)(ELSE)utm_campaign=(CAMPAIGN-ID)(ENDIF)</URL>
В этом примере, если клик не относится к URL кампании для гостиниц (например, к обычной поисковой кампании), результатом будет следующий URL:
https://www.partner.com?hotelID=123&utm_campaign=87654321
Если пользователь нажмет на URL кампании для гостиниц, то будет перенаправлен по следующему адресу:
https://www.partner.com?hotelID=123&hotel_campaign=12345678
Это полезно, когда вам нужно отличать трафик от кликов по объявлениям в кампаниях для гостиниц от других кликов.
Пустые идентификаторы кампаний с кликами по бесплатным ссылкам для бронирования
Если клик был выполнен по бесплатной ссылке для бронирования, то параметр IF-HOTEL-CAMPAIGN возвращает значение TRUE, а параметр CAMPAIGN-ID остается пустым, как показано в следующем URL:
https://www.partner.com?hotelID=123&hotel_campaign=
Чтобы избежать пустых идентификаторов кампаний, можно использовать условный оператор IF-AD-CLICK, как показано в примере ниже.
<URL>https://partner.com?hotelID=(PARTNER-HOTEL-ID)(IF-HOTEL-CAMPAIGN)(IF-AD-CLICK)&hotel_campaign=(CAMPAIGN-ID)(ELSE)&FreeBookingLink(ENDIF)(ELSE)utm_campaign=(CAMPAIGN-ID)(ENDIF)</URL>
IF-MODIFICATIONS-IDS
Вы можете создать условный блок, который проверяет, обновил ли пользователь сообщение ARI Rate modifications.
В примере ниже эта директива используется в файле целевой страницы:
<URL>https://partner.com/?hid=(PARTNER-HOTEL-ID)(IF-MODIFICATION-IDS)&promo_applied=true&mod_ids=(MODIFICATION-IDS)(ENDIF)</URL>
В этом примере, если пользователь не изменил сообщение об изменении тарифов ARI, результатом будет следующий URL:
https://partner.com?hid=123
Если пользователь обновил сообщение об изменении тарифов ARI, получится следующий URL:
https://partner.com?hid=123&promo_applied=true&mod_ids=7
IF-PROMO-CODE
Вы можете создать условный блок, который проверяет, связан ли промокод на скидку с ценой для указанного пользователя, которая настроена с помощью сообщений ARI Promotions или правил тарифов.
В примере ниже эта директива используется в файле целевых страниц:
<URL>https://partner.com/booking?hid=(PARTNER-HOTEL-ID)(IF-PROMO-CODE)&promotion_code=(PROMO-CODE)&discount_applied=true(ENDIF)</URL>
В этом примере, если промокод недействителен, результатом будет следующий URL:
https://partner.com?hid=123
Если у пользователя есть действительный промокод и он имеет право на скидку, результатом будет следующий URL:
https://partner.com?hid=123&promotion_code=123_abc&discount_applied=true
Пример использования IF-PROMOTED (только для рекламы отелей)
Вы можете создать условный блок, который проверяет, нажал ли пользователь на объявление для продвижения объекта.
В примере ниже эта директива используется в файле целевых страниц:
<URL>https://partner.com/(IF-PROMOTED)1(ELSE)0(ENDIF)?hid=(PARTNER-HOTEL-ID)</URL>
В этом примере, если пользователь не выбрал объявление для продвижения объекта, результатом будет следующий URL:
https://partner.com/0?hid=123
Если пользователь нажал на объявление для продвижения объекта, то URL будет выглядеть следующим образом:
https://partner.com/1?hid=123
Пример использования IF-RATE-RULE-ID
Вы можете создать условный блок, который проверяет, выбрал ли пользователь специальную цену. Если да, то используется значение элемента <RateRuleID> в блоке <Rate> сообщения-транзакции.
Подробнее…
В примере ниже эта директива используется в файле целевых страниц:
<URL>https://partner.com?hid=(PARTNER-HOTEL-ID)(IF-RATE-RULE-ID)&rate_rule=(RATE-RULE-ID)(ELSE)(ENDIF)</URL>
В этом примере, если пользователь не выбрал специальную цену, результатом будет следующий URL:
https://www.partner.com?hid=123
Если пользователь выбрал специальную цену, URL будет выглядеть так:
https://www.partner.com?hid=123&rate_rule=(RATE-RULE-ID)
Пример функции IF-USER-LIST-ID (задается в Google Рекламе)
Если вы задали мультипликаторы ставок для списков аудиторий в кампании для гостиниц в Google Рекламе, то можете использовать IF-USER-LIST-ID вместе с USER-LIST-ID, чтобы задать на своем сайте параметр для клиента, который относится к определенному списку аудитории Google Рекламы. Это может потребоваться для отслеживания или персонализации сайта для пользователей из списков аудиторий.
<URL>https://partner.com/?hid=(PARTNER-HOTEL-ID)(IF-USER-LIST-ID)&audience_list=(USER-LIST-ID)(ELSE)(ENDIF)</URL>
Если пользователь не входит в список аудитории, то в нашем примере будет получен следующий URL:
https://www.partner.com?hid=123
Если пользователь был в списке аудитории 12345678, то результатом будет следующий URL:
https://www.partner.com?hid=123&audience_list=12345678
Пример использования IF-VERIFICATION
Если вам нужно проверить, сгенерировал ли Google URL для тестирования или проверки, вы можете использовать IF-VERIFICATION.
<URL>https://partner.com/?hid=(PARTNER-HOTEL-ID)(IF-VERIFICATION)&isgoogle=true(ENDIF)</URL>
В этом примере, если Google не сгенерировал URL для тестирования или проверки, результатом будет следующий URL:
https://www.partner.com?hid=123
Если URL был сгенерирован Google для тестирования или проверки, то результатом будет следующий URL:
https://www.partner.com?hid=123&isgoogle=true
Пример использования FOR-EACH-CHILD-AGE
Вы можете создать условный блок, который будет заполнять максимальный возраст каждого ребенка, указанный в фиде с тарифами отелей.
В примере ниже эта директива используется в файле целевых страниц:
<URL>https://partner.com?adults=(NUM-ADULTS)&children=(NUM-CHILDREN)(FOR-EACH-CHILD-AGE)&age=(CHILD-INDEX)_(CHILD-AGE)(END-FOR-EACH)&hid=(PARTNER-HOTEL-ID)&</URL>
В этом примере, если в маршруте указаны два взрослых и два ребенка в возрасте 0 и 17 лет, получится следующий URL:
https://www.partner.com?adults=2&children=2&age=0_0age=1_17&hid=123
Если в маршруте указано двое взрослых и ни одного ребенка, то URL будет выглядеть следующим образом:
https://www.partner.com?adults=2&children=0&hid=123
Общие правила создания URL
Все переменные необязательны. В URL целевой страницы не нужно вставлять переменные. Однако использование переменных для передачи информации о маршруте и пользователе обычно повышает удобство для пользователей и помогает вам соблюдать правила Google.
При определении составных URL в файле целевых страниц действуют следующие общие правила:
Все переменные заключены в круглые скобки.
Параметры строки запроса должны быть разделены амперсандом ("&") в итоговом выводе. Потому что амперсанд – это специальный символ в XML, а файл целевых страниц имеет формат XML. Поэтому вместо него нужно использовать код &. В итоговом коде будет отображаться символ "&". Пример:
<!-- Do this: --> <URL>https://www.partnerdomain.com?hotelID=(PARTNER-HOTEL-ID)&nights=(LENGTH)</URL> <!-- Do NOT do this: --> <URL>https://www.partnerdomain.com?hotelID=(PARTNER-HOTEL-ID)&nights=(LENGTH)</URL>Специальные символы, которые могут быть в URL целевой страницы, также должны быть закодированы. Пример:
- Пробел (" "): замените пробелы на "%20;" в элементе
<URL>. - Косая черта (/). Замените косые черты на %2F; в элементе
<URL>.
Не все символы, не относящиеся к алфавиту, должны быть закодированы в URL. Например, дефисы ("-") не нужно кодировать для URL. Список распространенных символов, которые необходимо кодировать, можно найти в статье Кодирование URL.
- Пробел (" "): замените пробелы на "%20;" в элементе
Значения для одного параметра можно составить из нескольких переменных. В примере ниже один параметр
checkinDateсоздается из переменныхCHECKINDAY,CHECKINMONTHиCHECKINYEAR:<URL>https://www.partnerdomain.com?checkinDate=(CHECKINDAY)%2F;(CHECKINMONTH)%2F;(CHECKINYEAR)</URL>В результате получится URL, который может выглядеть следующим образом:
https://www.partnerdomain.com?checkinDate=7/23/1971В качестве названия параметров строки запроса можно использовать любой идентификатор. Ваш сервер обрабатывает эти значения. Однако передаваемые значения ограничены списком доступных переменных.
Помимо доступных переменных, можно использовать до пяти пользовательских переменных.