Переменные и условия

Реклама отелей и бесплатные ссылки для бронирования содержат ссылки на целевые страницы, где пользователи могут забронировать номера. Вы можете указать, как 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)&amp;checkinDay=(CHECKINDAY)&amp;checkinMonth=(CHECKINMONTH)&amp;checkinYear=(CHECKINYEAR)&amp;nights=(LENGTH)</URL>

Пример 2

<URL>https://www.partnerdomain.com/hotel/(PARTNER-HOTEL-ID)&amp;checkinDay=(CHECKINDAY)&amp;checkinMonth=(CHECKINMONTH)&amp;checkinYear=(CHECKINYEAR)&amp;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 Указывает, нажал ли пользователь на стандартную цену или на цену за пакет услуг. Возможные значения:
  • hotel – пользователь нажал на ссылку со стандартной ценой за номер.
  • room – пользователь нажал на объявление со списком характеристик номера.
CLOSE-RATE-RULE-IDS Optional (only applies if you are using conditional or private rates) Список идентификаторов правил для недоступных тарифов, разделенный запятыми. Эти тарифы могли бы быть доступны, если бы пользователь выполнил незначительное действие. Обратите внимание, что идентификаторы правил назначения цен для закрытых цен всегда указываются здесь, когда пользователю показывается соответствующий вариант интерфейса.
Optional Устарело. Значения дополнительных полей, заданные в элементе <Result>. Ограничение на количество символов в каждом поле – 200. Подробнее о сообщениях-транзакциях… Специальные поля недоступны при использовании ARI. Переменные CUSTOM указываются только в том случае, если вы отправляете цены в сообщении-транзакции.
DATE-TYPE Optional Указывает, выбрал ли пользователь дату по умолчанию или указал конкретную дату в поиске. Возможные значения:
  • default – пользователь нажал на объявление для рекламы отелей или бесплатную ссылку для бронирования, в которых использовались даты по умолчанию.
  • selected – пользователь нажал на объявление для рекламы отелей или бесплатную ссылку для бронирования с заданными датами.
GOOGLE-ADS-CLICK-SOURCE Optional Указывает, что источником клика является Google Реклама. Возможные значения:
  • bl: платные ссылки для бронирования
  • tpa: объявления для привлечения туристов
  • tfsa: фиды туристических услуг в поисковых объявлениях
  • pm: кампании с максимальной эффективностью или кампании с максимальной эффективностью для целей туризма.
  • dg: кампания для создания спроса
  • Примечание. Если клик был выполнен в Google Поиске, а не в Google Рекламе, этот параметр будет пустым.

GOOGLE-SITE Optional Ресурс Google, на котором пользователь просматривал данные о ценах в вашей гостинице. Возможные значения:
  • localuniversal – пользователь нашел ссылку для бронирования отеля через поиск google.com.
  • mapresults – пользователь нашел ссылку для бронирования гостиницы через maps.google.com.
  • verification: Google использует это значение при проверке качества данных на вашем сайте. За такие запросы плата не взимается. Google Аналитика может использовать этот параметр и его значение для идентификации трафика, связанного с проверкой рекламы отелей.
  • unknown: пользователь нашел объявление или бесплатную ссылку для бронирования через неопределенный источник.
LENGTH Recommended Длительность пребывания в ночах, заданная элементом <Nights> в фиде с тарифами отелей. Пример: 3.
MODIFICATION-IDS Optional

Если вы используете изменение цен ARI, значением этой переменной будет атрибут id сообщения об изменении цены. Если применено несколько модификаций, то в произвольном порядке указывается список их идентификаторов, разделенных запятыми.

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, значение этой переменной присваивается атрибуту id примененной промоакции <Promotion>. Если применено несколько промоакций, то в этом поле будет список идентификаторов промоакций, разделенных запятыми и указанных в произвольном порядке.

Если вы используете правила тарифов, значение этой переменной присваивается элементу PromoCode, если применяется соответствующее правило тарифов.

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:
  • mobile
  • tablet
  • desktop
  • unknown

Значение переменной 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)&amp;adType=1(ELSE)&amp;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)&amp;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)&amp;checkinDay=(CHECKINDAY)&amp;checkinMonth=(CHECKINMONTH)&amp;checkinYear=(CHECKINYear)&amp;checkoutDay=(CHECKOUTDAY)&amp;checkoutMonth=(CHECKOUTMONTH)&amp;checkoutYear(CHECKOUTYear)&amp;num_adults=(NUM-ADULTS)(IF-CLOSE-RATE-RULE-IDS)&amp;promo_type=member_signup&amp;rate_rule=(CLOSE-RATE-RULE-ID)(ELSE)(IF-RATE-RULE-ID)&amp;promo_type=conditional&amp;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)&amp;checkinDay=(CHECKINDAY)&amp;checkinMonth=(CHECKINMONTH)&amp;checkinYear=(CHECKINYEAR)&amp;nights=(LENGTH)(IF-DEFAULT-DATE)&amp;popup_datepicker=true(ELSE)&amp;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)&amp;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)&amp;hotel_campaign=(CAMPAIGN-ID)(ELSE)&amp;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)&amp;promo_applied=true&amp;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)&amp;promotion_code=(PROMO-CODE)&amp;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)&amp;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)&amp;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)&amp;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)&amp;children=(NUM-CHILDREN)(FOR-EACH-CHILD-AGE)&amp;age=(CHILD-INDEX)_(CHILD-AGE)(END-FOR-EACH)&amp;hid=(PARTNER-HOTEL-ID)&amp;</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. Поэтому вместо него нужно использовать код &amp;. В итоговом коде будет отображаться символ "&". Пример:

    <!-- Do this: -->
    <URL>https://www.partnerdomain.com?hotelID=(PARTNER-HOTEL-ID)&amp;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.

  • Значения для одного параметра можно составить из нескольких переменных. В примере ниже один параметр 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
    
  • В качестве названия параметров строки запроса можно использовать любой идентификатор. Ваш сервер обрабатывает эти значения. Однако передаваемые значения ограничены списком доступных переменных.

  • Помимо доступных переменных, можно использовать до пяти пользовательских переменных.