it-swarm.com.de

Google Analytics mehrere Domains unter einem Konto ohne eine Domain?

Cross-Post von Stackoverflow

Hier ist das Problem, das ich habe:

Derzeit müssen wir über www.chess.com und secure.chess.com verfolgen. Ich kann die Domain jedoch nicht auf .chess.com setzen, da das Cookie auf einer anderen Domain, live.chess.com, Probleme verursacht.

Um dies im Code zu umgehen, mache ich so etwas:

<? if (HTTPS) { ?>
    <script>
    var _gaq = _gaq || [];
    _gaq.Push(['_setAccount', 'UA-XXXXX-01']);
    _gaq.Push(['_setDomainName', 'secure.chess.com']);
    _gaq.Push(['_trackPageview']);
    </script>
<? } else { ?>
    <script>
    var _gaq = _gaq || [];
    _gaq.Push(['_setAccount', 'UA-XXXXX-02']);
    _gaq.Push(['_setDomainName', 'www.chess.com']);
    _gaq.Push(['_trackPageview']);
    </script>
<? } ?>

Dies zwingt uns jedoch dazu, zwei Analysekonten (UA-XXXXX-01 und UA-XXXXX-02) zu führen und eine Trennung zwischen HTTPS- und HTTP-Verkehr herzustellen.

Wie kann ich dies einrichten, damit EIN Analytics-Konto sowohl secure.chess.com als auch www.chess.com protokolliert, ohne ein Cookie der obersten Ebene (.chess.com) zu setzen?

7
leek
<? if ( %%HTTP_Host%% != 'live.chess.com' ) { ?>
<script>
var _gaq = _gaq || [];
_gaq.Push(['_setAccount', 'UA-XXXXX-01']);
_gaq.Push(['_setDomainName', '<? echo %%HTTP_Host%% ?>']);
_gaq.Push(['_trackPageview']);
</script>
<? } ?>

(Wobei %%HTTP_Host%% eine Variable ist, die von Ihrem serverseitigen Skript generiert wurde)

Edit: Um zu bestätigen, ist der folgende Code auf allen Seiten enthalten, die bei secure.chess.com und www.chess.com generiert wurden, und es werden keine Skriptfehler bei secure.chess.com angezeigt. Richtig?

<script type="text/javascript">
  (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);
  })();
</script>
1
danlefree