Mit Google™ Analytics können Sie die Zugriffe auf Ihre Webseiten analysieren und die Aktivitäten auf Ihren Seiten in Echtzeit überwachen. Allgemeine Informationen zum Google™ Analytics Werkzeug finden Sie über die weiterführenden Links am Artikelende.
Weblication® CMS bietet Ihnen eine einfache Möglichkeit, um den erforderlichen Tracking-Code in Ihren Webseiten einzubinden. In den BASE Projekten ist das Tracking-Snippet bereits im Ausgabetemplate hinterlegt. Dies ermöglicht eine einfache Nutzung von Google™ Analytics über das Ausgabetemplate. Sie müssen lediglich die ID in der Projektkonfiguration hinterlegen. Das Template ist bereit Google™ Consent Mode V2 vorbereitet und hierzu im Standard erstmal allgemein hinsichtlich der Paramter so eingestellt, daß alles abgelehnt wird (siehe Skript-Auszug unten).
Wenn eine Google™ Analytics ID in der Projektkonfiguration hinterlegt ist, wird für nicht eingeloggte Benutzer (Seitenbesucher) der Tracking-Code mit dieser ID in den Seiten generiert.
Das für die Webseiten verwendete Darstellungstemplate (z.B. standard.wDocument.php) bindet hierzu am Ende das Templates für die Tracking Codes ein. Dies ist in einem globalen Template abgelegt und definiert den erforderlichen Sourcecode (Javascript), der mit der angegebenen ID für die Ausgabe generiert wird. Hinsichtlich des Google™ Consent Mode V2 passen Sie die Werte im Template so an, wie dies für Ihr Vorhaben gewünscht ist. Allgemeine Informationen hierzu finden Sie in den Dokumentationen von Google™, wozu am Seitenende diverse Artikel auch schon verlinkt sind.
... <!-- Tracking Code für Google Analytics --> <xsl:template name="googleAnalytics"> <xsl:if test="$wUsertype != 'admin' and $wUsertype != 'standard'"> <script> var confirmTypes = '<xsl:value-of select="php:functionString('wVariables::getValue', 'confirm_cookie_types', $wGlobalProjectPath, '')"/>'; var confirmBeforeTrack = '<xsl:value-of select="php:functionString('wVariables::getValue', 'confirm_before_track', $wGlobalProjectPath, '')"/>'; if(confirmTypes != 'yes' && confirmBeforeTrack != 'yes' || document.cookie.indexOf('allowTracking=1') != -1 || /Google-AdWords-Express/i.test(navigator.userAgent)){ window['gaId'] = '<xsl:value-of select="php:functionString('wVariables::getValue', 'googleAnalytics_id', $wGlobalProjectPath)"/>'; if(document.cookie.indexOf('disableGoogleAnalytics=1') != -1){ window['ga-disable-' + window['gaId']] = true; } else if(window['gaId'].substr(0, 2) == 'G-' || window['gaId'].substr(0, 3) == 'AW-'){ (function(i,s,o,g){a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.googletagmanager.com/gtag/js?id='+window['gaId']); window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} /* For more information on the following parameters, see: https://developers.google.com/tag-platform/security/guides/consent?hl=de&consentmode=advanced) */ gtag('consent', 'default', { 'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'denied' }); gtag('js', new Date()); gtag('config', window['gaId']); } else{ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', window['gaId'], 'auto'); ga('set', 'anonymizeIp', true); //ga('require', 'linkid', 'linkid.js'); ga('send', 'pageview'); } } </script> </xsl:if> </xsl:template> ...