目的
ユーザー入力またはクリエイティブからの動的な値に基づいて、URL に値を追加します。
このソリューションは、スタジオまたはキャンペーン マネージャー 360 で設定した exit URL にパラメータを追加します。XML フィードや Google スプレッドシートなど、外部データソースから取得したダイナミック exit URL を使用する場合は、ダイナミック exit URL を使用するをご覧ください。
解決策
Enabler.exitQueryString()
メソッドを使って exit クエリ文字列を設定します。詳しくは、Studio HTML5 SDK のリファレンスをご覧ください。
exit クエリ文字列は、データをランディング ページに送信する必要がある場合に便利です。たとえば、ユーザーに郵便番号の送信を求めるテキスト欄がクリエイティブにある場合、exit クエリ文字列を設定すると、リンク先 URL を使ってランディング ページにその郵便番号を渡すことができます。
例
この記事では、exit クエリ文字列を使用する次の 2 つの方法について説明します。
標準形式のクエリ文字列で exit のリンク先 URL に値を追加するには、Enabler.exit()
ではなく Enabler.exitQueryString(id, opt_queryString)
を使用します。標準の exit イベントと同じように、スタジオのウェブ管理画面でベースとなる URL を入力します。queryString
パラメータが URL の最後に追加されます。
このメソッドでは、入力した URL にクエリ文字列がすでにあるかどうかが自動的に検出され、それによって区切り文字に「?」か「&」が自動的に選択されます。クリエイティブにクエリ文字列の区切り文字を手動で指定する必要はありません。
スタジオが「?」か「&」を選択する仕組みについて、詳しくご覧ください。以下の説明は、変数 theaterVar
の値を URL に設定するための呼び出しと、その結果生成される完全な URL(追加される区切り文字を含む)の基本的な例です。
Enabler.exitQueryString("Buy Tickets","venue="+theaterVar);
"Buy Tickets"
の URL が https://www.yoursite.com/purchasetickets.html の場合、生成される URL は、https://www.yoursite.com/purchasetickets.html?venue=thecoliseum
です。
スタジオで入力した URL にクエリ文字列がないと、スタジオは値に「?」を付加します。"Buy Tickets"
の URL が https://www.yoursite.com/purchasetickets.html?showid=1234 の場合、次の URL が生成されます。
https://www.yoursite.com/purchasetickets.html?showid=1234&venue=thecoliseum
スタジオに入力した URL にはすでにクエリ文字列が含まれているため、スタジオは値に「&」を付加します。
クリエイティブの入力テキスト欄に入力されたユーザーの郵便番号のデータをランディング ページに追加する場合、次の例のようになります。
var zipCode = document.getElementById("zipcode").value;
function zipExitHandler() {
// たとえば "10023" が ID "zipcode" のテキスト欄に入力された場合
Enabler.exitQueryString("my zip exit", "zip="+ zipCode);
}
exitBtn.addEventListener('click', zipExitHandler, false);
スタジオで URL: http://www.purchasetickets.com を my zip exit
に入力すると、次の URL が生成されます。
http://www.purchasetickets.com?zip=10023
入稿担当者またはサイトが指定した loc
と name
の値をランディング ページに追加する場合、次の例のようになります。
loc
と name
の値は、スタジオ メソッド Enabler.getParameter()
を使用してアクセスする必要があります。このメソッドについて詳しくは、Studio HTML5 SDK のドキュメントをご覧ください。
var locVar = Enabler.getParameter("loc");
var nameVar = Enabler.getParameter("name");
function onKeyValueExitHandler() {
Enabler.exitQueryString(
"my key value exit",
"loc="+locVar+"&name="+nameVar);
}
exitBtn.addEventListener('click', onKeyValueExitHandler, false);
スタジオで、URL: http://www.purchasetickets.com を my key value exit
に入力すると、Key-Value は loc
に対して「madison」、name
に対して「mraz」として設定され、次の URL が生成されます。
http://www.purchasetickets.com?loc=madison&name=mraz