変数と条件

ホテル広告と無料の予約リンクには、ユーザーが客室を予約できるランディング ページへのリンクが含まれています。ユーザーは、ユーザーと旅行プランに関するすべての追加情報を含むリンクをどのように構築するかを定義できます。たとえば、ホテル 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 泊予約すると、前のリンクは次のようにレンダリングされます。

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。この属性名はホテルリスト フィードで指定されます。個別の ID があると、フィード情報用に 1 つの宿泊施設 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 ステートメントには次のものが含まれます。

条件 推奨 / オプション 説明
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(通常の検索キャンペーンなど)以外の場合は、次の URL が返されます。

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

これは、ホテル キャンペーンのクリックを他のクリックと区別する場合に役立ちます。

FBL のクリックがある空の CAMPAIGN-ID

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

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

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

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

テスト用または自動検証用の URL を Google が生成したかどうかを確認する必要がある場合は、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>

この例では、旅行プランに大人 2 人と 0 歳と 17 歳の子供 2 人が参加していた場合、結果は次の URL になります。

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 つのカスタム変数を使用できます。