1

Google Adwords キャンペーンと App Store への通常のトラフィックの両方のコンバージョンを測定しようとしています。以前は、私のページに「/app_store/」というリンクがあり、ロードして 1 秒待ってからアプリ ストアに進みました。

Javascript を使用して、どこかでよりエレガントなソリューションを見つけました。アドワーズ広告の場合はピクセル画像を読み込み、アナリティクスの場合は Google Javascript 関数を呼び出し、一瞬停止してからリンクをたどります。

残念ながら、それは私にとってはうまくいきません。Google Analytics と Google Adsense では、誰も App Store にアクセスしていません (私でさえも)。

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-18180332-1']);
  _gaq.push(['_trackPageview']);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

function recordOutboundLink(link, category, action) {
    try{
        // Google Analytics
        var pageTracker = _gat._getTracker("UA-18180332-1");
        pageTracker._trackEvent(category, action);

        // Google Adwords
        var image = new Image(1, 1);
        image.src = "http://www.googleadservices.com/pagead/conversion/1046551421/?value=$8&amp;label=zqrfCMWh0QEQ_baE8wM&amp;guid=ON&amp;script=0"
        setTimeout('document.location = "' + link.href + '"', 100)

    } catch(err) {}
}
</script>

そしてリンクについて:

<a href="http://itunes.apple.com/ae/app/isimplifiedchinese/id377690407?mt=8"
onClick="recordOutboundLink(this, 'Outbound Links', 'http://itunes.apple.com/ae/app/isimplifiedchinese/id377690407?mt=8');return false;">
<img alt="Appstore" src="images/appstore.png"></a>

ここで何が間違っていますか?

更新 23:13 遅延が 100 ミリ秒の場合、次のエラーが点滅することに気付きました (スクリーンショットの時間を計るのに時間がかかりました)。

リソースの読み込みに失敗しました

私は Erwan の提案でこれをテストしただけです。古いバージョンでも発生したかどうかはわかりません。遅延が長くなるとエラーは解消されるようです。安全のために300msに設定しました。

4

3 に答える 3

0

クリック アクション (リンクを参照) は、記録するまで実行されないようにする必要があります。onclick 属性に「return false」を追加します。

onclick="recordOutboundLink(params);return false;"

それが役に立てば幸い

于 2011-02-23T13:35:42.490 に答える
0

私は何とか私のものを_gaq.push();

それ以外の:

var pageTracker = _gat._getTracker("UA-18180332-1");
pageTracker._trackEvent(category, action);

行う:

_gaq.push(['_trackEvent', category, action]);

そのため、ページの開始時に _gaq がすでに初期化されているため、pageTracker を再度取得する代わりに。_gaq を使用してイベント トラッカーをプッシュするだけです。また、Google アナリティクスはリアルタイムで更新されず、多くの場合、48 時間更新されないことに注意してください。

于 2011-02-23T13:36:33.387 に答える
0

GA コードの実行が完了する前に、スクリプトがリダイレクトされている可能性があります。残りのコードの後に​​実行されることが保証されるように、gaq に配置してみてください。関数は次のようになります。

function recordOutboundLink(link, category, action) {
    // Google Analytics
    _gaq.push(['_trackEvent', category, action]);

    // Google Adwords
    _gaq.push(function() {
    var image = new Image(1, 1);
    image.src = "http://www.googleadservices.com/pagead/conversion/1046551421/?value=$8&amp;label=zqrfCMWh0QEQ_baE8wM&amp;guid=ON&amp;script=0";
    });
    _gaq.push(function() {setTimeout('document.location = "' + link.href + '"', 100);});
}

私はそれをテストしていませんが、以前に試したことに似ています。

于 2011-02-23T14:03:05.950 に答える