変数と条件

ホテル広告と無料の予約リンクには、ユーザーが客室を予約できるランディング ページへのリンクが含まれます。Google でのリンクの作成方法を定義して、ユーザーと旅行プランに関するすべての追加情報を含めることができます。たとえば、ホテル ID、言語、通貨コード、チェックイン日などの情報を URL に含めることができます。

概要

ランディング ページ URL はランディング ページ ファイルで定義します。広告または無料の予約リンクが表示されると、URL の動的な情報が実際の値に置き換えられます。ランディング ページ URL に動的な値を追加するには、次の構文を使用します。

<URL>https://partner_url?param_id=(variable_name)</URL>

次の例は、実際のホテル ID と旅行プランの代わりに Google の変数名を使用する URL を示しています。

<URL>https://www.partnerdomain.com?hotelID=(PARTNER-HOTEL-ID)
  &amp;checkinDay=(CHECKINDAY)&amp;checkinMonth=(CHECKINMONTH)
  &amp;checkinYear=(CHECKINYEAR)&amp;nights=(LENGTH)
</URL>

ランディング ページへのリンクが検索結果ページ用に構築されるとき、Google は変数を実際の値に置き換えて、URL に動的情報が含まれるようにします。たとえば、ユーザーが 2023 年 5 月 23 日からホテル #42 の 6 泊を予約した場合、Google は前のリンクを次のようにレンダリングします。

https://www.partnerdomain.com?hotelID=42&checkinDay=23&checkinMonth=05&checkinYear=2023&nights=6

Google がクエリ文字列の変数に割り当てる値は、宿泊料金フィード、ホテルリスト フィード、ユーザー設定内の対応するデータによって異なります。

たとえば、LENGTH 変数の値は、関連する旅行プランの料金フィードの <Nights> 要素に割り当てられます。同様に、PARTNER-HOTEL-ID 変数の値は、ユーザーの検索条件に一致するホテルリスト フィードの <id> 要素で定義されます。

一部の変数は料金フィード要素のサブセットです。たとえば、CHECKINDAYCHECKINMONTHCHECKINYEAR の各変数は、料金フィード内の単一の <Checkin> 要素から抽出されます。その他の変数は、ユーザーの言語 / 地域やその他のクライアント設定に基づいて計算されます。

変数値のソースについて詳しくは、料金の概要ホテルリストをご覧ください。

URL の変数

次の表に、ランディング ページ URL の作成に使用できる変数を示します。

変数 推奨 / オプション 説明
ADVANCE-BOOKING-WINDOW Optional 予約時におけるホテルのタイムゾーンでのチェックイン日の事前予約日数。たとえば、36 のようにします。
ALTERNATE-HOTEL-ID Recommended (if you have separate IDs to identify properties versus booking engines) 宿泊施設の代替 ID。この属性名はホテルリスト フィードで指定されています。フィード情報用に 1 つの宿泊施設 ID が必要で、予約エンジン用に別の宿泊施設 ID が必要な場合は、個別の ID があると便利です。
CAMPAIGN-ID Recommended URL に関連付ける Google 広告キャンペーンの ID。クリックが Google 広告の広告キャンペーンに関連付けられていない場合は、空白になります。
CHECKINDAY Recommended 宿泊料金フィードの <Checkin> 要素で定義された 2 桁で表した日付。例: 20
CHECKINDAY-OF-WEEK Optional ホテルのタイムゾーンでのチェックインの曜日(MondaySunday)。例: Tuesday
CHECKINMONTH Recommended 宿泊料金フィードの <Checkin> 要素で定義された 2 桁の月。例: 05
CHECKINYEAR Recommended 宿泊料金フィードの <Checkin> 要素で定義された 4 桁の年。例: 2023
CHECKOUTDAY Recommended 宿泊料金フィードの <Nights> 要素と <Checkin> 要素から計算された 2 桁の日付。例: 26
CHECKOUTMONTH Recommended 宿泊料金フィードの <Nights> 要素と <Checkin> 要素から計算された 2 桁で表した月。たとえば、05 です。
CHECKOUTYEAR Recommended 宿泊料金フィードの <Nights> 要素と <Checkin> 要素から計算された 4 桁の年。たとえば、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) 利用できない料金ルール ID のカンマ区切りのリスト。ただし、ユーザーが軽微な操作を実行していれば取得できた可能性があります。非公開レートの料金ルール ID は、対応する UI 処理がユーザーに表示されるときに、常にここに入力されます。
CUSTOM[1-5] Optional <Result> 要素で定義されたカスタム フィールドの値。カスタム フィールドあたり 200 文字以内。詳細については、トランザクション メッセージの概要をご覧ください。ARI を使用する場合、カスタム フィールドは使用できません。
DATE-TYPE Optional ユーザーがデフォルトの日付を選択したのか、検索で指定された特定の日付を選択したのかを示します。有効な値は次のとおりです。
  • default: デフォルトの日付が使用されているホテル広告または無料の予約リンクをユーザーがクリックしました。
  • selected: ユーザーが、日付が設定されたホテル広告または無料の予約リンクをクリックしました。
GOOGLE-SITE Optional ユーザーがホテルの料金データを表示した Google プロパティ。有効な値は次のとおりです。
  • localuniversal: ユーザーが google.com 検索でホテルの予約リンクを見つけました。
  • mapresults: ユーザーが maps.google.com でホテルの予約リンクを見つけました。
  • verification: Google は、サイトで自動データ品質テストを実施する際にこの値を使用します。これらのクエリに対しては課金されません。Google アナリティクスでは、このパラメータとその値を使用して、ホテル広告の自動確認トラフィックを識別できます。
  • unknown: ユーザーが不明なソースから広告または無料の予約リンクを見つけました。
LENGTH Recommended 宿泊料金フィードの <Nights> 要素で定義された泊数に基づく滞在日数。例: 3
NUM-ADULTS Recommended (must be used with the NUM-CHILDREN or FOR-EACH-CHILD-AGE condition) ユーザーが旅行プランで指定した大人の宿泊人数。この変数は、NUM-CHILDRENFOR-EACH-CHILD-AGE、またはその両方と組み合わせて使用する必要があります。
NUM-CHILDREN Recommended ユーザーが旅行プランで指定した子供の宿泊人数(0 ~ 17 歳)。子供の宿泊プランに適切に参加するには、NUM-CHILDRENFOR-EACH-CHILD-AGE、またはその両方が必要です。
NUM-GUESTS Recommended (if you don't send child occupancy pricing) ユーザーが旅行プランで指定した宿泊人数(大人と子供の両方)。この値は、NUM-ADULTSNUM-CHILDREN の値の合計です。参加率を最大化するには、代わりに NUM-ADULTSNUM-CHILDREN の両方を使用することを強くおすすめします。
PACKAGE-ID Recommended (applies if you use Room Bundles) 宿泊料金フィードのパッケージの一意の識別子。標準パッケージの場合、パッケージ ID は <Result> ブロック内の <PackageID> 要素の値です。条件の組み合わせの場合、パッケージ ID はトランザクション メッセージの <RoomBundle> ブロックまたは <PackageData> ブロック内の <PackageID> 要素の値になります。
PARTNER-CURRENCY Optional 宿泊料金フィードの <Baserate> 要素の currency 属性で定義された 3 文字の通貨コード。たとえば、USDCAD です。
PARTNER-HOTEL-ID Recommended ホテルリスト フィードの <id> 要素で定義されたホテルの一意の識別子。
PARTNER-ROOM-ID Recommended (applies if you use Room Bundles) 宿泊料金フィードに含まれる客室の一意の識別子。標準の客室の場合、客室 ID は <Result> ブロック内の <RoomID> 要素の値になります。条件の組み合わせの場合、客室 ID はトランザクション メッセージの <RoomBundle> ブロックまたは <RoomData> ブロック内の <RoomID> 要素に割り当てられた値です。
PAYMENT-ID Optional (only applies to Ads) 手数料徴収代行業者を利用する場合は、定義済みの文字列 commission、または Google が割り当てた IATA 番号(「01234567」など)に解決されます。IATA 番号または定義済みの文字列の形式を変更するには、テクニカル アカウント マネージャー(TAM)にお問い合わせください。
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 プロモーションを使用する場合、この変数の値は、適用される <Promotion>id 属性に割り当てられます。複数のプロモーションを適用する場合は、任意の順序でのプロモーション ID のカンマ区切りのリストを指定します。

料金ルールを使用する場合、対応する料金ルールが適用されると、この変数の値が PromoCode 要素に割り当てられます。

RATE-PLAN-ID Recommended (only applies if you use RoomBundles) 料金フィードの <RoomBundle> ブロック内の <RatePlanID> 要素で定義された ID。<RatePlanID> は、客室とパッケージのデータの組み合わせの一意の識別子を表します。詳しくは、 条件の組み合わせをご覧ください。
RATE-RULE-ID Recommended (only applies if you use conditional rates or private rates) 料金フィードの <Rate> ブロック内の rate_rule_id 属性で定義された ID。詳しくは、 限定価格をご覧ください。
USER-COUNTRY Recommended ユーザーの現在地を示す 2 文字の国コード。この情報はユーザーのクライアント設定から抽出されます。たとえば、USFR です。
USER-CURRENCY Recommended ユーザーの現地通貨を示す 3 文字の通貨コードUSER-CURRENCY 変数の値は、ユーザーのクライアント設定から推定されます。たとえば、USDCAD です。
USER-DEVICE Recommended ユーザーのデバイスタイプ。USER-DEVICE の値は次のいずれかです。
  • mobile
  • tablet
  • desktop
  • unknown

USER-DEVICE 変数の値は、ユーザーのクライアント設定から推定されます。

USER-LANGUAGE Recommended 広告または無料の予約リンクの表示言語を指定する 2 文字の ISO 639-1 言語コードUSER-LANGUAGE 変数の値は、ユーザーのクライアント設定から推定されます。たとえば、enfr です。
USER-LIST-ID(Google 広告で定義) Optional (only applies if you use Audience Lists in Google Ads) オーディエンス リストまたはユーザー情報を含む Google 広告ユーザーリスト ID。オーディエンス リストは、入札単価調整を設定する際のベースとして使用されます。ユーザーが複数のオーディエンス リストに登録されている場合は、入札単価調整が最も大きいオーディエンス リストが選択されます。入札単価調整の値が大きいオーディエンスは、ランダムに選ばれます。
VERIFICATION Optional リンクがテスト用または自動検証用に Google によって生成されたかどうかを検証するブール値。リンクがテストまたは自動検証のために Google によって生成された場合は true、それ以外の場合は false です。

URL での条件付きロジック

ランディング ページ ファイルの <URL> 要素で特別なディレクティブを使用すると、条件付きでエンドポイントを作成できます。

条件付きロジックでは、次のステートメントがサポートされています。

  • if_statement: true の場合、この条件に続く値が URL に挿入されます。それ以外の場合は、ELSE ディレクティブに続く値が挿入されます。

  • for_statement: 指定された値の数を反復する FOR ループ条件を作成します。

IF ステートメントと FOR ステートメントには次のものが含まれます。

Condition 推奨 / オプション 説明
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 ユーザーが対象外であったために 1 つ以上の限定価格を利用できなかった場合は true になり、それ以外の場合は false になります。非公開レート の UI 処理がユーザーに表示された場合は、デフォルトでは true になります。
IF-DEFAULT-RATE Optional デフォルトの日付が使用されたホテル リスティングをユーザーがクリックした場合は true になり、それ以外の場合は false になります。
IF-HOTEL-CAMPAIGN Optional ユーザーのクリックがホテル キャンペーンで発生した場合は true、それ以外の場合は false になります。この区別は、Google 広告に複数のキャンペーン タイプを持つパートナーがアトリビューションを割り当てるのに役立ちます。
IF-PAYMENT-ID(ホテル広告のみ) Recommended (if you use pay-per-stay Google Ads campaigns) 宿泊課金型(PPS)コミッション プログラムに参加しているホテルの場合は true になります。それ以外の場合は false になります。
IF-PROMO-CODE Optional ユーザーが ARI プロモーションまたは指定された PromoCode の料金ルールに基づく料金をクリックした場合は true に解決され、それ以外の場合は false に解決されます。
IF-PROMOTED(ホテル広告のみ) Recommended (if you use Promoted hotels) ユーザーが施設プロモーション広告をクリックした場合は true に解決され、それ以外の場合は false になります。
IF-RATE-RULE-ID Optional ユーザーが限定価格 を選択した場合は true に解決され、選択されていない場合は false になります。
IF-USER-LIST-ID(Google 広告で定義) Optional ユーザーがオーディエンス リストの入札単価調整比を設定するときに指定した Google 広告顧客リスト ID のメンバーである場合は true に解決され、メンバーでない場合は 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"> 要素ごとに 1 回実行されます。たとえば、<OccupancyDetails><Child age="17"><Child age= "17"> の 2 つの要素が含まれている場合、ディレクティブは 2 回実行されます。
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 の例

条件の組み合わせを明示的に指定せずにユーザーがホテルを選択したかどうかを確認する条件付きブロックを作成できます。トランザクション メッセージの <Room Bundle> ブロック内の <RatePlanID> 要素の値は、ユーザーが選択した、暗黙的に関連付けられた条件の組み合わせ料金に設定されます。

次の例では、ランディング ページ ファイルでこのディレクティブを使用しています。

<URL>https://partner.com/(IF-CLICK-TYPE-HOTEL)landing(ELSE)landing_room(ENDIF)?hid=(PARTNER-HOTEL-ID)</URL>

この例では、ユーザーが条件の組み合わせを選択した場合、次の URL が返されます。

https://partner.com/landing_room?hid=123

ユーザーが条件の組み合わせを選択しなかった場合は、次の URL が返されます。

https://partner.com/landing?hid=123

IF-CLICK-TYPE-ROOM の例

ユーザーが条件の組み合わせを選択したかどうかを確認する条件付きブロックを作成できます。

次の例では、ランディング ページ ファイルでこのディレクティブを使用しています。

<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-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)<strong>(IF-DEFAULT-DATE)</strong>&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&hotel_campaign=12345678

クリックがホテル キャンペーンの URL ではない場合(通常の検索キャンペーンなど)、結果は次のようになります。

https://www.partner.com?hotelID=123&utm_campaign=87654321

これは、ホテル キャンペーンのクリックと他のクリックのトラフィックを区別する場合に便利です。

空白の CAMPAIGN-ID と FBL のクリック数

無料の予約リンクがクリックされた場合、次の URL に示すように、IF-HOTEL-CAMPAIGNTRUE を返し、CAMPAIGN-ID の値は空白に設定されます。

https://www.partner.com?hotelID=123&hotel_campaign=

次の例のように、IF-AD-CLICK 条件文を使用して、キャンペーン ID が空白になるのを防ぐことができます。

<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-PAYMENT-ID の例(ホテル広告のみ)

クリックが PPS コミッション プログラムによるものかどうかに基づいて URL を変えるには、IF-PAYMENT-ID 条件文を使用します。以下の例では、PPS コミッション プログラムからのクリックかどうかを確認し、その結果に基づいて booking_source パラメータに値を割り当てます。

<URL>https://partner.com?hid=(PARTNER-HOTEL-ID)&amp;booking_source=(IF-PAYMENT-ID)(PAYMENT-ID)(ELSE)cpc(ENDIF)</URL>

ホテルがコミッション プログラムに参加している場合は、次のいずれかの URL が返されます。

  • Google に IATA 番号が割り当てられていない場合:
    https://partner.com?hid=123&amp;booking_source=commissions
  • IATA 番号が Google に割り当てられている場合:
    https://partner.com?hid=123&amp;booking_source=01234567

それ以外の場合、結果は次のようになります。

https://partner.com?hid=123&booking_source=cpc

IF-PROMOTED の例(ホテル広告のみ)

ユーザーが施設プロモーション広告をクリックしたかどうかを確認する条件付きブロックを作成できます。

次の例では、ランディング ページ ファイルでこのディレクティブを使用しています。

<URL>https://partner.com/(IF-PROMOTED)1(ELSE)0(ENDIF)?hid=(PARTNER-HOTEL-ID)</URL>

この例では、ユーザーが施設プロモーション広告を選択すると、次の URL が返されます。

https://partner.com/1?hid=123

ユーザーが施設プロモーション広告を選択しなかった場合は、次の URL が返されます。

https://partner.com/0?hid=123

IF-RATE-RULE-ID の例

ユーザーが限定価格を選択したかどうかを確認する条件付きブロックを作成できます。その場合は、トランザクション メッセージの <Rate> ブロックの <RateRuleID> 要素の値が使用されます。

次の例では、ランディング ページ ファイルでこのディレクティブを使用しています。

<URL>https://partner.com?hid=(PARTNER-HOTEL-ID)(IF-RATE-RULE-ID)&amp;customerType=42(ELSE)(ENDIF)</URL>

この例では、ユーザーが限定価格を選択しなかった場合は、次の URL が返されます。

https://www.partner.com?hid=123

ユーザーが限定価格を選択した場合は、次の URL が返されます。

https://www.partner.com?hid=123&customerType=42

IF-USER-LIST-ID の例(Google 広告で定義)

Google 広告のホテル キャンペーンでオーディエンス リストの入札単価調整比を設定する場合は、IF-USER-LIST-IDUSER-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

Google がテストまたは検証用に URL を生成した場合、結果は次の 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>

この例では、旅行プランに大人 2 人、子供 2 人(それぞれ 0 歳と 17 歳)がいる場合、結果は次のようになります。

https://www.partner.com?adults=2&children=2&age=0_0age=1_17&hid=123

旅行プランに大人 2 人と子供が 0 人の場合、結果は次の URL になります。

https://www.partner.com?adults=2&children=0&hid=123

URL を作成する際の一般的なルール

すべての変数は省略可能です。ランディング ページ URL に変数を挿入する必要はありません。ただし、通常、変数を使用して旅行プランとユーザー情報を渡すと、ユーザー エクスペリエンスが向上し、Google のポリシーに準拠しやすくなります。

ランディング ページ ファイルで構築された URL を定義する場合は、次の一般的なルールが適用されます。

  • すべての変数は開きかっこと閉じかっこで囲まれています。

  • クエリ文字列パラメータは、URL 内の疑問符(「?」)の後にのみ渡すことができます。

  • クエリ文字列パラメータは、最終的な出力ではアンパサンド(&)で区切る必要があります。アンパサンドは XML の特殊文字であり、ランディング ページのファイル形式は XML であるため。そのため、代わりにエンコードされたエンティティ「&amp;」を使用する必要があります。最終出力では、実際の「&」文字が表示されます。次に例を示します。

    <!-- 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 に含める特殊文字も、URL エンコードする必要があります。次に例を示します。

    • スペース(「 」): <URL> 要素内の空白文字を「%20;」に置き換えます。
    • スラッシュ(「/」): スラッシュは <URL> 要素内で「%2F」に置き換えます。

    アルファベット以外のすべての文字を URL エンコードする必要があるわけではありません。たとえば、ハイフン(「-」)を URL エンコードする必要はありません。URL エンコードする必要がある一般的な文字の一覧については、URL エンコードの表をご覧ください。

  • 1 つのパラメータの値は複数の変数から構成できます。次の例では、CHECKINDAY 変数、CHECKINMONTH 変数、CHECKINYEAR 変数から単一のパラメータ checkinDate を作成します。

    <URL>https://www.partnerdomain.com?checkinDate=(CHECKINDAY)%2F;(CHECKINMONTH)%2F;(CHECKINYEAR)</URL>
    

    この例では、URL は次のようになります。

    https://www.partnerdomain.com?checkinDate=7/23/1971
    
  • クエリ文字列パラメータの名前には任意の ID を使用できます。サーバーはこれらの値を処理します。ただし、渡される値は使用可能な変数のリストに限定されます。

  • 使用可能な変数のリストに加えて、最大 5 つのカスタム変数を使用できます。