WoltLab Cloud KittMedia Besuchsstatistiken 1.2.6

Erweitere deine WoltLab Suite mit einem leichtgewichtigen Werkzeug, um die Popularität deines Projekts zu messen, indem du Seitenaufrufe zählst.

Erweitere deine WoltLab Suite mit einem leichtgewichtigen Werkzeug, um die Popularität deines Projekts zu messen, indem du Seitenaufrufe zählst. Die KittMedia Besuchsstatistiken verfolgen nicht deine Besucher und verwenden keine Tracking-Mechaniken. Es ist von der Konzeption aus bereits datenschutzfreundlich und benötigt auch keine Erweiterung der Datenschutzerklärung.


Ein interaktives Diagramm zeigt deine Website-Aufrufe über die Zeit und kommt mit den wichtigsten Statistiken für die heutigen, die gestrigen und die Gesamtanzahl an Aufrufen. Daneben stellt es eine Auflistung der am häufigsten aufgerufenen Seiten bereit.

Datenschutz

Die KittMedia Besuchsstatistiken verarbeiten oder speichern keine personenbezogenen Daten deiner Besucher im Vergleich zu den meisten anderen Statistik-Diensten wie Google Analytics oder Matomo (Piwik).


Neben der aufgerufenen URL und deren Titel werden nur der Zeitstempel des Aufrufs in der Datenbank gespeichert, ob der Besucher registriert und angemeldet war oder nicht, die Sprache der aufgerufenen Seite sowie deren ID und Objekt-ID.


Nie werden Daten zu uns oder einen anderen Dritten gesendet.


Durch diesen Mechanismus sind die KittMedia Besuchsstatistiken zu 100 % DSGVO-konform ohne eine zusätzliche Zustimmung des Besuchers zu benötigen oder die Datenschutzerklärung zu erweitern.

Daten, die nicht gespeichert werden

Manche Anfragen werden nicht vom Plugin gespeichert. Neben Seitenaufrufen, die der Benutzer nicht aufrufen darf (HTTP-Fehler 403) oder die nicht verfügbar sind (HTTP-Fehler 404) werden ungültige Anfragen, jene von Suchmaschinen oder AJAX-Aktionen, Dateianhänge, Medien oder Hintergrund-Aktionen ignoriert.


Zusätzlich kannst du das Zählen von Aufrufen pro Benutzergruppe deaktivieren.


Wenn ein Benutzer eine Konversation öffnet, werden der Titel und die URL ersetzt, bevor die KittMedia Besuchsstatistiken die Daten in der Datenbank speichert.

Zusammengefasst

Du kannst die Statistiken in deiner Administrationsoberfläche unter Verwaltung > Statistiken > Besuchsstatistiken einsehen.

Einzelne Benutzergruppen können in den Benutzergruppeneinstellungen unter Allgemeine Rechte > Benutzerprofile > Aufrufe in den Besuchsstatistiken zählenvon den Statistiken ausgenommen werden.

Über Inhalt > Boxen kannst du auch eine Box namens „Aufrufe“ mit allgemeinen Statistiken in deinem Frontend anzeigen lassen.

Images

  • Version 1.2.6

    – Wir haben einen Fehler beim Erhalt des ersten verfügbaren Datums des Datenbankservers behoben.

  • Version 1.2.5

    – Wir haben die Zeitzonen-Handhabung verbessert, um einige Probleme bei der Darstellung der Statistiken zu korrigieren. Danke an Alexander Ebert, der maßgeblich geholfen hat, die Probleme zu identifizieren und zu korrigieren.

    – Wir haben korrigiert, dass bei jedem Absenden der Filter bei den Statistiken die Anzahl der Anfragen um den Faktor 2 zunahmen.

    – Wir haben ein Darstellungsproblem der Tooltips korrigiert, wenn nur registrierte Benutzer oder Gäste angezeigt werden sollten.

  • Version 1.2.4

    – Wir haben ein Problem behoben, das dazu führte, dass in der Besuchsstatistiken-Box beim Wert für diese Woche der Wert für die vorherige Woche angezeigt wurde.

  • Version 1.2.3

    – Wir haben Probleme behoben, die dazu führten, dass das Diagramm nicht korrekt angezeigt wurde, wenn nicht für jeden Tag Daten vorhanden waren.

    – Wir haben einen Fehler behoben, der dazu führte, dass die häufig aufgerufenen Seiten über den gesamten Zeitraum alle Einträge von heute beinhalteten.

  • Version 1.2.2

    – Wir haben fehlende Sprachvariablen hinzugefügt.

    – Wir haben sichergestellt, dass die Formatierung der Zahlen immer gemäß der Sprache erfolgt, die der aktuelle Benutzer hat.

    – Wenn nur eine Sprache verfügbar ist, wird die entsprechende Spalte bei den häufig besuchten Seiten nicht mehr angezeigt.

    – Es war möglich, dass die Berechnung der korrekten Werte mit einer Fehlermeldung fehlschlug.

    – Die Berechnung der Werte für Woche, Monat und gesamt wurde korrigiert.

    – Die Daten des jeweils aktuellen Tages wurden in der Liste der häufig aufgerufenen Seiten über den gesamten Zeitraum nicht beachtet.

    – Aufgrund eines Caching-Problems mit einer JavaScript-Datei konnte es sein, dass du eine Fehlermeldung beim Aufruf der Besuchsstatistiken erhältst.

    – Wir haben einen potenziellen Fehler auf Seiten korrigiert, auf denen die Box eingebunden war.

  • Version 1.2.1

    – Wir haben einen Fehler behoben, der in einer neuen Installation auftrat, wenn noch keine Daten vorhanden sind.


    Version 1.2.0

    – Für das Frontend kann nun eine Box namens „Aufrufe“ an einer beliebigen Stelle angezeigt werden, die die allgemeinen Statistiken auch dort anzeigt.

    – Das Diagramm kann nun auf einen zeitlichen Abschnitt limitiert werden.

    – Die Besuchstypen (Gäste/Registrierte Benutzer) können nun auf Wunsch ausgeblendet werden.

    – Ein neuer Bereich zeigt die am häufigsten aufgerufenen Seiten über den gesamten Erfassungszeitraum an.

    – Die Anzeige der Statistik für „gestern“ wird nun korrekt angezeigt, auch wenn der tägliche Cronjob noch nicht lief.

    – Die Anzeige der Statistik für „Diese Woche“ wurde korrigiert, da sie den aktuellen Tag nicht berücksichtigte.

  • Version 1.1.4

    – Behebt einen Fehler im Zusammenhang mit der Zeitumstellung

  • Version 1.1.3

    – Behebt einen Fehler im Cronjob, wenn es noch keine Statistiken gibt

  • Version 1.1.2

    – Englische Übersetzung verbessert, wenn aktuell keine Aufrufe vorhanden sind

    – Datenpunkt von Gästen verbessert

    – Cronjob-Aktualisierung verbessert

    – Diagramm-Design bei wenigen Einträgen verbessert

    – Anzeige der Tabelle der besuchten Seiten verbessert

    – Fehler bei ungültigen Seiten-IDs korrigiert

    – Fehler korrigiert, wodurch Gästen immer die Standard-Sprache zugeordnet wurde

  • Version 1.1.1

    – Behebt einen Fehler beim Berechnen des Durchschnitts

    – Behebt einen Fehler mit einem zu großen Feld in älteren MySQL-Versionen

    – Behebt ein potenzielles Teilen durch Null bei einer leeren Statistik

  • Hi


    When I install PHP-8.1 I get this error message in the forum


    Code
    Constant FILTER_SANITIZE_STRING is deprecated
  • Entsprechen die Besuchsstatistiken auch den Klicks (Zugriffen), die Woltlab bspw. bei den Artikeln zählt? Also wenn ich 10 Mal hintereinander die Seite refreshe, erscheinen dann bei den Statistiken 10 neue Aufrufe?

    • Ja, genau. Denn es findet keine Zuordnung zwischen Benutzer und Aufruf statt.

      Thanks 1
  • Wie genau setzt sich der Titel der häufig aufgerufenen Seiten zusammen? Ich habe bei einem meiner Plugins das Problem, dass dort der Content-Titel der Seite eingetragen ist, der auch in der page.xml eingetragen ist. Je nach URL (show/id-title/) ist der Titel aber anders. Statt dann den richtigen Titel der Seite (entsprechend zur ID) anzuzeigen steht bei mir nur der Standard-Wert aus der page.xml.

    Bei den Artikeln steht z.B. "Artikel Titel", ich kann mir aber nicht genau erklären, wo das genau her kommt. Danke schon mal für die Hilfe :)

    • Der Titel ist tatsächlich etwas tricky.

      Wie ich den in der Datenbank speichere, siehst du hier:

      https://github.com/KittMedia/c…istener.class.php#L34-L42


      Im Endeffekt verlasse ich mich an der Stelle darauf, was WoltLab mir über WCF::getTPL()->get('contentTitle') bzw. WCF::getTPL()->get('pageTitle') zurückgibt.


      Bei der Ausgabe im Template versuche ich dann nochmal, den korrekten Seitentitel aus dem PageCache zu bekommen:

      https://github.com/KittMedia/c…rPage.class.php#L166-L167


      Wenn das fehlschlägt, fällt er auf den in der Datenbank gespeicherten Wert zurück. Das dürfte bei dir der Fall sein.

    • Danke, dann werde ich mal in diese Richtung ein wenig mehr probieren, bzw. auch debuggen :)

      Ist zwar nicht so schlimm, aber wenn man 10 Mal den Titel aus der page.xml für unterschiedliche IDs hat, stört das doch manchmal :)

  • Hello,


    Latest version bugs my forum when i enable BOX on Forum.


    Woltlab Version : 5.3.5


    An error has occurred

    Internal error code: 9c2b2416f1769becf19cf491552952d6560ce090

    What happened?

    An error has occurred while trying to handle your request and execution has been terminated. Please forward the above error code to the site administrator.


    The error code can be used by an administrator to lookup the full error message in the Administration Control Panel via “Logs » Errors”. In addition the error has been written to the log file located at */log/2021-04-08.txt and can be accessed with a FTP program or similar.


    Notice: The error code was randomly generated and has no use beyond looking up the full message.

    • Error Type:

      wcf\system\exception\ErrorException

    • Error Message:

      Trying to get property 'conditionData' of non-object

    • File:

      */lib/system/WCF.class.php (343)

    • Stack Trace:
      • #0 */lib/system/box/VisitStatisticsVisitsBoxController.class.php (40):
      • wcf\system\WCF::handleError(8, 'Trying to get property \'conditionData\' of non-object', '*/lib/system/box/VisitStatisticsVisitsBoxController.class.php', 40, [ conditions => ])
      • #1 */lib/system/box/VisitStatisticsVisitsBoxController.class.php (27):
      • wcf\system\box\VisitStatisticsVisitsBoxController->getTemplate()
      • #2 */lib/system/box/AbstractBoxController.class.php (51):
      • wcf\system\box\VisitStatisticsVisitsBoxController->loadContent()
      • #3 */lib/data/box/Box.class.php (245):
      • wcf\system\box\AbstractBoxController->getContent()
      • #4 */templates/compiled/2_wcf_1___box.php (43):
      • wcf\data\box\Box->getContent()
      • #5 */lib/system/template/TemplateEngine.class.php (334):
      • include('*/templates/compiled/2_wcf_1___box.php')
      • #6 */lib/system/template/TemplateEngine.class.php (562):
      • wcf\system\template\TemplateEngine->display('__box', 'wcf', false)
      • #7 */lib/data/box/Box.class.php (285):
      • wcf\system\template\TemplateEngine->fetch('__box')
      • #8 */templates/compiled/2_wbb_1_boardList.php (2367):
      • wcf\data\box\Box->render()
      • #9 */lib/system/template/TemplateEngine.class.php (334):
      • include('*/templates/compiled/2_wbb_1_boardList.php')
      • #10 */lib/page/AbstractPage.class.php (323):
      • wcf\system\template\TemplateEngine->display('boardList', 'wbb')
      • #11 */lib/page/AbstractPage.class.php (114):
      • wcf\page\AbstractPage->show()
      • #12 */lib/system/request/Request.class.php (83):
      • wcf\page\AbstractPage->__run()
      • #13 */lib/system/request/RequestHandler.class.php (107):
      • wcf\system\request\Request->execute()
      • #14 */forum/index.php (9):
      • wcf\system\request\RequestHandler->handle('wbb')


    • Hi!


      Thank you for reporting, I was able to reproduce and fix it in the current development version:

      https://github.com/KittMedia/c…visitstatistics/issues/40

    • hey!


      thank you very much. Im updated my file but this time it gives me another error


      • Error Type:

        wcf\system\exception\ErrorException

      • Error Message:

        Undefined index: hideToday

      • File:

        */lib/system/WCF.class.php (343)

      • Stack Trace:
        • #0 */templates/compiled/2_wcf_1_boxVisitStatisticsVisits.php (17):
        • wcf\system\WCF::handleError(8, 'Undefined index: hideToday', '*/templates/compiled/2_wcf_1_boxVisitStatisticsVisits.php', 17, [ 7 items ])
        • #1 */lib/system/template/TemplateEngine.class.php (334):
        • include('*/templates/compiled/2_wcf_1_boxVisitStatisticsVisits.php')
        • #2 */lib/system/template/TemplateEngine.class.php (562):
        • wcf\system\template\TemplateEngine->display('boxVisitStatisticsVisits', 'wcf', false)
        • #3 */lib/system/box/VisitStatisticsVisitsBoxController.class.php (58):
        • wcf\system\template\TemplateEngine->fetch('boxVisitStatisticsVisits', 'wcf', [ 11 items ], true)
        • #4 */lib/system/box/VisitStatisticsVisitsBoxController.class.php (29):
        • wcf\system\box\VisitStatisticsVisitsBoxController->getTemplate()
        • #5 */lib/system/box/AbstractBoxController.class.php (51):
        • wcf\system\box\VisitStatisticsVisitsBoxController->loadContent()
        • #6 */lib/data/box/Box.class.php (245):
        • wcf\system\box\AbstractBoxController->getContent()
        • #7 */templates/compiled/2_wcf_1___box.php (43):
        • wcf\data\box\Box->getContent()
        • #8 */lib/system/template/TemplateEngine.class.php (334):
        • include('*/templates/compiled/2_wcf_1___box.php')
        • #9 */lib/system/template/TemplateEngine.class.php (562):
        • wcf\system\template\TemplateEngine->display('__box', 'wcf', false)
        • #10 */lib/data/box/Box.class.php (285):
        • wcf\system\template\TemplateEngine->fetch('__box')
        • #11 */templates/compiled/2_wbb_1_boardList.php (2367):
        • wcf\data\box\Box->render()
        • #12 */lib/system/template/TemplateEngine.class.php (334):
        • include('*/templates/compiled/2_wbb_1_boardList.php')
        • #13 */lib/page/AbstractPage.class.php (323):
        • wcf\system\template\TemplateEngine->display('boardList', 'wbb')
        • #14 */lib/page/AbstractPage.class.php (114):
        • wcf\page\AbstractPage->show()
        • #15 */lib/system/request/Request.class.php (83):
        • wcf\page\AbstractPage->__run()
        • #16 */lib/system/request/RequestHandler.class.php (107):
        • wcf\system\request\Request->execute()
        • #17 */forum/index.php (9):
        • wcf\system\request\RequestHandler->handle('wbb')


    • Could you please try this file instead?

      https://gist.github.com/MatzeK…0545d91edff36d87873e57ce0

      Like 1 Thanks 1
    • thank you very much, it seems fine now i can use box without any problem. :)

      Thanks 1
    • Thank you for helping resolving this issue! :)

      Thanks 1
  • Hi

    After I updated to version 1.2.1 I get an error message when I go to Visit Statistics in ACP


    Code
    The parameter “startDate” is missing or invalid.
    • Hi!


      Do you get this error every time or just once?

      If so, could you please clear your browser cache and try again?

      Thanks 1
    • Got this error after the update, but clearing the cache helped :)

    • Thank you for the response! Then I think I know what causes this problem.

      I’ve got it also once during development but couldn’t find a problem at that moment.

  • Hallo! Ich benötige eine Statistik, die mir zeigt, wie viele Aufrufe ein Thread (Seite 1 des Threads) hat. Generiert werden sollte eine Liste mit den Threads, die mehr als (zb) 1000 Aufrufe haben. Und es müsste einen Weg geben, die Statistiken zurück zu setzen. Kann ich das mit dem Plugin lösen?

    • Zumindest das Sammeln der Daten kann dieses Plugin übernehmen. Die Auswertung müsstest du dann über die Datenbank selbst manuell vornehmen.

  • Erst einmal vielen Dank für das Plugin.


    Wäre es möglich eventuell auf einzelne Zeitbereiche die die Übersicht häufig besuchte Seiten runter zu brechen.


    Eventuell mit Zeitangabe von - bis


    oder


    Einteilung zum Beispiel


    letzte Stunde

    letzte 2 Stunden

    letzte 4 Stunden

    letzte 12 Stunden

    letzte 24 Stunden

    letzte 2 Tage

    letzte Woche

    letzte 2 Wochen

    letzte 4 Wochen

    letzte 52 Wochen

    Gesamt

  • Gibt es die Möglichkeit die Zugriffe auf die verschiedenen Seiten einer Kategorie (hier: Filebase) zu bündeln? Ich habe eine Filebase Kategorie mit vielen Seiten, die alle bei mir aufgeführt werden unter "Datei-Kategorie Musik" (ohne weitere Details). Erst beim Klick auf den Eintrag in der Statistik sehe ich, dass es Seite 34 oder Seite 40 war. Für mich nützlich wäre es, wenn ich die Parametrisierung der Seiten (also z.B. &pageNo=) und ggf. andere Parameter ausblenden könnte.

    • Aktuell gibt es so etwas noch nicht. Eventuell wäre so etwas für zukünftige Versionen etwas.

      Like 1
  • Könnt ihr hier mal reinschauen? Dieser Fehler wird von eurem Plugin verursacht:


    RE: Fehlermeldung - A non well formed numeric value encountered

  • Wünschenswert wäre es, wenn die Statistik einen Unterschied bei den Gästen machen würde. Zwischen einen Robot (Crowler) und ein menschlicher Gast (Besucher) ist ein erheblicher Unterschied. Die Bots besuchen i.d.R. alle Seiten, während die menschlichen Gäste gezielt Seiten besuchen.

    • Es werden bereits alle Aufrufe, die der WoltLab Suite Core als Bots erkennt, ignoriert. Darüber hinaus gibt es eine schlichte Erkennung für weitere generische Browserkennungen.

      Like 1
  • Ich habe heute die 1.1.1 Version installiert, Aufräumarbeiten durchgeführt.

    Die Anzahl oben links als Zahl dargestellt (in der Übersicht) stimmt noch nicht mit der angezeigten Anzahl im Balkendiagramm

    überein:

    Beispiel:

    in der Übersicht

    Heute: 5474

    im Balkendiagramm:

    910 Besuche von Registrierten

    5474 Besuche von Gästen


    in der Übersicht müßten dann stehen Heute : 6385 (gesamt) die Addition von Registrierten + Gästen


    Gruß

    • Anders herum ist es korrekt: Es gibt 910 Besuche registrierter Benutzer und 4564 Besuche von Gästen, was dann im Tooltip auf 5474 addiert wird. Ich bin mir des Problems bewusst, kann ich allerdings bisher noch keine Lösung anbieten. Es wird aber sicherlich in einer zukünftigen Version adressiert werden.

  • Schön wäre noch, wenn man die Statistik für die letzten 14 Tage auf Stunden runterbrechen könnte. Damit könnte man schauen wann das Forum wie und von wem frequentiert wird.

    Like 1
    • Gibt es einen speziellen Grund für die von dir genannten 14 Tage? Hintergrund ist, dass ältere Daten aktuell nach 7 Tagen verworfen werden.


      Ein „von wem“ wird es effektiv nicht geben, allein deshalb, weil diese Daten gar nicht erfasst werden.


      Davon abgesehen kann ich mir aber gut vorstellen, das zu implementieren.

    • 7 Tage wäre auch ok. 14 Tage besser

    • Wieso das? Versteh mich bitte nicht falsch, das soll keine Kritik sein, ich möchte lediglich den Grund dafür erfahren. Letztendlich soll das, was ich in das Plugin einbaue, einen Mehrwert bieten. Dafür muss ich diesen Mehrwert aber auch verstehen.

    • Bei 14 Tagen sehe ich zwei Mal den gleichen Wochentag und kann dann Montag Vorwoche mit Montag laufende Woche vergleichen.

  • Forenweit Fehler:


    Parse error: syntax error, unexpected '?' in /www/htdocs/xxxxxxx/cms/lib/data/visitor/VisitorAction.class.php on line 95

    • Laut Fehlermeldung nutzt du nicht mindestens PHP 7.0, was Mindestvoraussetzung für die WoltLab Suite und damit einhergehend auch für dieses Plugin ist.

    • Upps. Tatsächlich.

  • Verursacht folgenden Fehler (version 1.10):


    Can't overwrite unknown table 'wcf1_visitor_daily'


    Sowohl als Update, als auch bei einer Neuinstallation!

    • Das hört sich für mich so an, als ob die Installation bzw. das Update beim ersten Mal nicht vollständig durchlief und nun Reste vom Update noch vorhanden sind.


      Bitte melde dich in unserem Supportforum unter https://support.kittmedia.com, um diesbezüglich Support zu bekommen.

  • Hallo Black Rider,


    es ist auch ein Fehler bei Sonderzeichen.


    "Announcements & Suggestions"


    Eigentlcih sieht es so aus.


    "Announcements & Suggestions"

    Thanks 1
    • Wird in der kommenden Version 1.1.0 korrigiert sein. :)

      Like 1
  • Hallo,


    ich bekomme wenn ich in meinem Forum ein Thema absenden will folgenden Fehler.

    Invalid datetime format: 1366 Incorrect string value: '\xFCr-1-t...' for column `wbb`.`wcf1_visitor`.`requestURI` at row 1

    Sofern ich dieses Plugi deinstalliere kommt der Fehler nicht mehr.


    MfG


    Allrounder18

  • Quote

    Antwort von Black Rider (Vor einer Stunde):

    Vorschläge werden gern angenommen. :)

    Ein Ausbau mit mehreren Diagrammen und z.B. Browser, Auflösung, Weltkarte ähnlich wie z.B. Analytics oder so etwas :) vielleicht auch als Pro Version dann ;)

    • Ich habe mir bereits so etwas gedacht. 🙈

      Die Besuchsstatistiken sind explizit darauf ausgelegt, keine personenbezogenen Daten zu speichern. Dies zu tun, würde umfangreiche notwendige Schritte für den Seitenbetreiber bedeuten – und wir alle wissen, wie oberflächlich sich viele, wenn überhaupt, damit auseinandersetzen.


      Ich stimme dir zu, dass es definitiv schön wäre, solche Daten sammeln zu können. Allerdings bin ich mir ebenso bewusst, dass viele das nicht datenschutzkonform schaffen würden, also ihre eigenen Aufgaben diesbezüglich zu erledigen. Daher möchte ich kein Werkzeug dafür anbieten, das entsprechend missbraucht werden kann – ob bewusst oder unbewusst.

    • Solange du keine IP oder eine ID dazu aufbaust ist das doch kein Problem :)


      Das heist OS und Browser Type dürfte man Problemlos aufzeichnen können ;)

    • Nicht unbedingt. Für eine Weltkarte muss anhand der IP-Adresse das Land erkannt werden. Auch wenn die IP-Adresse nicht gespeichert wird, wird sie in dem Moment verarbeitet und dementsprechend müsste eine Einwilligung gegeben sein.


      Letztendlich muss man sich die Frage stellen, wie weit man gehen will und mein Ziel ist in erster Linie der Datenschutz und dass die Daten nie einzelnen Personen zugeordnet werden können. Das geht nur mit den geringstmöglichen Daten. Wenngleich ich das mit Betriebssystem und Browser durchaus verstehen kann, da diese Informationen auch technische Hintergründe haben.

    • Hm Ok bei Weltkarte bin ich noch irgendwie bei dir auch wenn Google und Co. das alle DSVGO Konform anbieten. Aber Auflösung, OS und Browser Version bringen einem ohne einen Bezug auf IP Adresse oder Tracking Cookie nichts :)

  • Recht herzlichen Dank :)