Veröffentlichungsdatum: 27. April 2021
Änderungsdatum: 07. September 2021
weblication cms statistik version 16 16er nachrüsten base classic
Die Statistik-Funktionen zu CM-Version 16 finden Sie im BASE (Mobile First) Projekt umgesetzt. Ältere Projekte, wie z.B. die BASE Classic 2.x können Sie manuell nachrüsten.
Für die Funktionalität sind nur wenige Skripte erforderlich, welche in bestehenden Projekten entweder manuell abgelegt werden können oder über ein Weblic® Update der globalen BASE Classic Templates nachinstalliert werden (manuelles Einbinden erforderlich).
Zur BASE (Mobile First) können die Skripte mit aktiver CMS-Version 16 über die weiteren Werkzeuge installiert werden.
/[IHR-LAYOUT-PROJEKT]/wGlobal/layout/scripts/wa.js
/[IHR-LAYOUT-PROJEKT]/wGlobal/scripts/php/wa.php
Diese Skripte finden Sie in jeweils aktueller Fassung im aktuellsten Mobile First Projekt. In der BASE Classic wurden diese ebenso im Standard nachgerüstet (Stand: September 2021) - auf die Aktualität im BASE Classic Projekt kann allerdings keine Gewährleistung gegeben werden, weshalb Sie dies am besten mit einer aktuellen BASE (Mobile First) abgleichen.
Diese Skripte können Sie zu einer BASE (Mobile First) auch über das weitere Werkzeug "BASE Analyzer / Updater" und dort die Auswahl "Erweiterte Statistik für Version 16 aktivieren" installieren.
Beachten Sie, daß Änderungen in den Skripten nur in der Mobile First erfolgen und in einer anderen Projektgrundlage manuell nachzuziehen sind.
Um die erforderlichen Skripte in den Webseiten einzubinden, reicht es aus, das wa.js JavaScript über die includes.global.php zu registrieren. Nachfolgendes Beispiel zeigt dies auf, was am besten nach dem Einbinden der design.js vorzunehmen ist. In der BASE Classic wurden dies im Standard bereits nachgerüstet
(Stand: September 2021), inkl. der Abfrage auf die Projektkonfiguration wie in der BASE (Mobile First).
<xsl:value-of select="php:functionString('wPageCur::registerJs', concat($wGlobalProjectPath, '/wGlobal/layout/scripts/wa.js'), '')"/>
In der BASE Classic wurden dies im Standard bereits nachgerüstet
(Stand: September 2021), inkl. der Abfrage auf die Projektkonfiguration wie in der BASE (Mobile First):
<xsl:if test="php:functionString('wVariables::getValue', 'log_requests_wa', $wGlobalProjectPath) = 'yes'"> <xsl:value-of select="php:functionString('wPageCur::registerJs', concat($wGlobalProjectPath, '/wGlobal/layout/scripts/wa.js'), '')"/> </xsl:if>
<variable description="Erweiterte Statistik nutzen (ab Version 16 auswertbar)" key="log_requests_wa" type="char.yesno">yes</variable>
Für das Interaktions-Tracking (nutzbar ab der Version 16) ist zudem die design.js zu erweitern. In der BASE Classic wurde dies im Standard bereits nachgerüstet
(Stand: September 2021).
// ... //////////////////////////////////////////////////////////////// // // Initialisieren der Seite // //////////////////////////////////////////////////////////////// jQuery(document).ready(function(){ // ... if(typeof wEditor === 'undefined'){ if(typeof wUiTmp['wHasWa'] !== 'undefined' && wUiTmp['wHasWa']){ addInteractionTracking(); } } }); // ... //////////////////////////////////////////////////////////////// // // Ergänzt Interaktions-Tracking (nutzbar ab der Version 16) // //////////////////////////////////////////////////////////////// addInteractionTracking = function(root){ jQuery('a[href*="http"]').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).attr('href')}, category : 'extern'}); jQuery('a.mail, a.wpst').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).html()}, category : 'mail'}); jQuery('a.phone').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).html()}, category : 'phone'}); jQuery('video').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).attr('src')}, category : 'video'}); jQuery('.tab').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).children('div').first().html()}, category : 'tab'}); jQuery('.accordionHeader').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).first().text()}, category : 'accordion'}); jQuery('.listBannerSlider .listMoverBack').wAnalyzeEvents({event : 'click', label : 'Back', category : 'bannerSelect'}); jQuery('.listBannerSlider .listMoverForward').wAnalyzeEvents({event : 'click', label : 'Forward', category : 'bannerSelect'}); jQuery('.listBannerSlider .listEntriesPreview .listEntry').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).closest('.listBannerSlider').find('.listEntry .listEntryTitle').eq(jQuery(this).index()).text()}, category : 'bannerSelect'}); jQuery('.listBannerSlider .listEntry.clickable').wAnalyzeEvents({event : 'click', label : function(){return jQuery(this).find('.listEntryTitle').text()}, category : 'banner'}); };