[TYPO3-UG Dutch] google analytics

Mark Kuiphuis spam at markyourweb.com
Mon Jun 29 09:23:53 CEST 2009


Hi Ronald,

Ronald Wopereis wrote:
> hi all,
> ik heb een hook gemaakt waarmee de klant zijn eigen google analytics code
> kan toevoegen en op die manier kan kiezen om site statistics te volgen.
> vraag : is deze manier (zie hieronder) handig / kan het anders / handiger ?
> alvast bedankt,
> 
> Ronald
> 
> [1] in de "menu" template opgenomen:
> # Google Analytics lib.g-a = FILE lib.g-a.file =
> fileadmin/user_upload/{$sitename}/g-a.inc
> 
> [2] in de site-template (index.tmpl) opgenomen, vlak boven de </body>, de
> anchor voor templavoila:
> <div id="g-a">hier komt de google analytics code</div>
> 
> [3] in templavoila een veld "g-a", gemapt naar de <div id="g-a">
> type=ELEMENT, editingType=TypoScript Object Path, objectPath=lib.g-a
> 
> [4] file aangemaakt in de directory fileadmin/user_upload
> director/{$sitename}/g-a.inc
> inhoud:  "<!-- vervang deze regel door de google analytics js code -->"
> 

Persoonlijk houd ik ervan om, als het niet nodig is om iets te includen, 
dit ook niet te doen.

Ik gebruik zelf de volgende combinatie in één TYPO3 installatie die 20 
verschillende websites aanbiedt in gemiddeld 6 verschillende talen per 
website. Elke taal van elke website draait puur en alleen op 1 
domeinnaam (ter voorkoming van double content) en met een paar stukjes 
typoscript wordt voor elke domeinnaam een unieke Google Analytics code 
gegenereerd. Dit omdat eigenlijk alleen de Google key per situatie uniek is.

In de CONSTANTS van de root-pages heb ik het volgende gedefinieerd:

HTTP_HOST_NL = www.domein.nl
HTTP_HOST_EN = www.domain.com
HTTP_HOST_FR = www.domain.fr
HTTP_HOST_DE = www.domain.de
HTTP_HOST_ES = www.domain.es
HTTP_HOST_IT = www.domain.it

GA_KEY_NL = UA-XXXXXXX-1
GA_KEY_EN = UA-XXXXXXX-2
GA_KEY_FR = UA-XXXXXXX-3
GA_KEY_DE = UA-XXXXXXX-4
GA_KEY_ES = UA-XXXXXXX-5
GA_KEY_IT = UA-XXXXXXX-6

Vervolgens in de SETUP:

[globalString = IENV:HTTP_HOST = {$HTTP_HOST_NL}]
	temp.ga_key.value = {$GA_KEY_NL}
[end]

Hiermee geef je dus op basis van de domeinnaam de temp.ga_key de 
UA-XXXXXXX-X code mee die je hieronder weer in temp.google.80 pompt.

temp.google = COA
temp.google.10 = HTML
temp.google.10.value = <script type="text/javascript">
temp.google.20 = HTML
temp.google.20.value = var gaJsHost = (("https:" == 
document.location.protocol) ? "https://ssl." : "http://www.");
temp.google.30 = HTML
temp.google.30.value = document.write(unescape("%3Cscript src='" + 
gaJsHost + "google-analytics.com/ga.js' 
type='text/javascript'%3E%3C/script%3E"));
temp.google.40 = HTML
temp.google.40.value = </script>
temp.google.50 = HTML
temp.google.50.value = <script type="text/javascript">
temp.google.60 = HTML
temp.google.60.value = try {
temp.google.70 = HTML
temp.google.70.value = var pageTracker = _gat._getTracker("
temp.google.80 = HTML
temp.google.80 < temp.ga_key
temp.google.90 = HTML
temp.google.90.value = ");
temp.google.100 = HTML
temp.google.100.value = pageTracker._trackPageview();
temp.google.110 = HTML
temp.google.110.value = } catch(err) {}</script>

# Add a newline character after almost any line (NOT AFTER THE unique 
pagetracker ID)
temp.google.11 = HTML
temp.google.11.value.char = 10
temp.google.21 = HTML
temp.google.21.value.char = 10
temp.google.31 = HTML
temp.google.31.value.char = 10
temp.google.41 = HTML
temp.google.41.value.char = 10
temp.google.51 = HTML
temp.google.51.value.char = 10
temp.google.61 = HTML
temp.google.61.value.char = 10
temp.google.91 = HTML
temp.google.91.value.char = 10
temp.google.101 = HTML
temp.google.101.value.char = 10
temp.google.111 = HTML
temp.google.111.value.char = 10

Nu alleen nog een marker ###GOOGLE### net boven de </body> in je 
template en goed mappen et voilà....

Het voordeel hiervan is, is dat je maar 1 plek de script-code hebt 
staan. Mocht Google dus met een update komen van hun javascript, dan 
hoef je het maar op 1 plek aan te passen (wel zo handig met 6 talen x 20 
websites = 120 verschillende domeinen) :)

Groeten,
Mark


More information about the TYPO3-UG-Dutch mailing list