2016-09-16 10 views
0

私はGTMの世界では少し新しく、現在のJavaScriptはプロジェクトを引き継ぐ前に存在していました。私の問題は、キャンペーンコードがデコードされていないことです(例:qwer%2aqwer)。私はencodingURLを追加しようとしていますが、それをクリーンアップしようとしていますが、動作させるには問題があります。GTM URLデコード

function() { 
    try { 
     if ({{redirectParams}}){ 
      var redirectParams = {{redirectParams}}, 
       url = {{Page URL}}, 
       utm_campaign = redirectParams.utm_campaign; 

      if (url.indexOf('utm_campaign') === -1 && url.indexOf('utm_source') === -1 && url.indexOf('utm_medium') === -1 && url.indexOf('utm_content') === -1 && url.indexOf('utm_term') === -1 && url.indexOf('gclid') === -1 && url.indexOf('dclid') === -1) { 
       return utm_campaign 
      } 

私は「utm_campaignを返す」の構文には、decodeURIComponentを追加することができるはずだと思うだろうが、それは働いていません。

私は「return utm_camapin」構文に追加することができますが、そうではありません。 (例:return decodeURIcomponent( 'utm_campaign)

+0

申し訳ありません。GTMで動作するはずいくつかのコードですが、あなたのコードは、私には意味がありません。あなたは少しさらにそれを説明することはできますか?utm_campaignを= redirectParamsを。 utm_ca mpaign;あなたの例ではutm_campaignが定義されていないので、本当に役に立ちません。 – michaelsinner

答えて

0

質問に入力したコードとGTMのコードを再度確認します。js関数がGTMの値を返さないようにするコードがいくつかあります。ここで

function() { 
 
    try { 
 
    if ({{redirectParams}}) { 
 
     var redirectParams = {{redirectParams}}, 
 
     url = {{Page URL}}, 
 
     utm_campaign = redirectParams.utm_campaign; 
 

 
     if (url.indexOf('utm_campaign') === -1 && url.indexOf('utm_source') === -1 && url.indexOf('utm_medium') === -1 && url.indexOf(
 
      'utm_content') === -1 && url.indexOf('utm_term') === -1 && url.indexOf('gclid') === -1 && url.indexOf('dclid') === 
 
     -1) { 
 
     return decodeURICompnent(utm_campaign); 
 
     } 
 
    } 
 
    } catch (e) {} 
 
}