Umami Analytics
Inoffizielles Umami-Plugin ohne Verbindung zu Umami: Traffic, Top-Seiten, Referrer und Aufrufe pro Eintrag im EmDash-Admin.
Erweiterung
Umami Analytics
Inoffizielles Umami-Plugin ohne Verbindung zu Umami: Traffic, Top-Seiten, Referrer und Aufrufe pro Eintrag im EmDash-Admin.
Beschreibung
Ein inoffizielles Plugin. Es steht in keiner Verbindung zu Umami und wird von Umami weder unterstützt noch empfohlen.
Zeigt Ihre Umami-Zahlen im EmDash-Admin an: den Website-Traffic im Dashboard und die Seitenaufrufe neben den Einträgen, die sie erzielt haben. Für Umami Cloud und ein selbst gehostetes Umami ab Version 3.4.0.
- Umami-Traffic-Karte. Im Dashboard: Besuche, Seitenaufrufe und Engagement der letzten sieben Tage im Vergleich zur Vorwoche sowie die fünf meistaufgerufenen Seiten mit ihren Einträgen.
- Umami-Analytics-Seite. Ein Tagesdiagramm über 7, 30 oder 90 Tage, Absprungrate und Besuchsdauer, Top-Einträge, Referrer, Länder, Seitenaufrufe nach den Ereignisdaten, die Ihre Website anhängt (zunächst nach Kategorie), und eine Einrichtungsprüfung, die für jedes gefundene Problem die Lösung nennt.
- Seite pro Eintrag. Jeder veröffentlichte Eintrag mit seinen Seitenaufrufen der letzten 7 und 30 Tage, sortierbar, für eine Sammlung oder alle, auf Wunsch mit zusammengefassten Übersetzungen.
- Umami-Editor-Bereich. Die Seitenaufrufe jedes Eintrags der letzten 7 und 30 Tage neben dem Editor und wie weit Leser kommen, wenn Ihre Website ein Leseereignis sendet.
- MCP-Werkzeuge. Vier schreibgeschützte Werkzeuge, die aus den gespeicherten Zahlen antworten.
Das Plugin liest nur. Es ändert nie etwas in Umami oder in Ihren Inhalten. Mit Demodaten können Sie es ohne Umami-Website ausprobieren.
Es wurde mit einem selbst gehosteten Umami 3.4.0 getestet. Die Verbindung zu Umami Cloud folgt der veröffentlichten Umami-API und wurde noch nicht mit einem Cloud-Konto getestet.
Basiert auf dem EmDash-Analytics-Plugin von Eisbachcode unter der MIT-Lizenz.
Installation
Sie benötigen: EmDash 1.0.1 oder neuer mit einem Plugin-Sandbox-Runner; eine Website in Umami, auf der das Tracking-Skript von Umami bereits eingebunden ist; ein selbst gehostetes Umami ab 3.4.0 (die erste selbst gehostete Version mit API-Schlüsseln) oder Umami Cloud; und EMDASH_ENCRYPTION_KEY auf der Website, damit der API-Schlüssel verschlüsselt gespeichert werden kann (npx emdash secrets generate erzeugt einen).
- Installieren Sie das Plugin aus der Registry und prüfen Sie seine Berechtigungen: Inhalte lesen, das Schema lesen und Netzwerkanfragen an beliebige öffentliche Hosts. Das Plugin fragt nur die Umami-API-URL aus seinen Einstellungen ab.
- Legen Sie in Umami einen Benutzer mit der Rolle View only an. Fügen Sie ihn dem Team hinzu, dem Ihre Website gehört, mit der Teamrolle View only. Gehört die Website Ihnen persönlich und nicht einem Team, verschieben Sie sie zuerst in ein Team.
- Melden Sie sich als dieser Benutzer bei Umami an und erstellen Sie unter Settings > API keys einen Schlüssel.
- Öffnen Sie in EmDash Plugins und dann die Einstellungen dieses Plugins. Fügen Sie den Schlüssel in Umami API key ein.
- Setzen Sie bei einem selbst gehosteten Umami die Umami API URL auf
https://your-host/api. Der Standardwert ist die Adresse von Umami Cloud. - Geben Sie die Umami-Website-ID aus den Einstellungen der Website in Umami ein. Lassen Sie das Feld leer, listet die Dashboard-Karte die Websites auf, die der Schlüssel sehen kann, sodass Sie eine kopieren können. Speichern Sie.
- Öffnen Sie Plugins > Umami Analytics und wählen Sie Check setup. Es prüft alles, wovon die Zahlen abhängen, und nennt zu jedem Problem einen Satz.
Die ersten Synchronisierungen lesen bis zu Keep daily rows for (standardmäßig 90 Tage) zurück, beginnend mit den neuesten. Unter Node dauert das bei einer Website mit 100 Einträgen etwa zwei Stunden.
Jede Sammlung benötigt ein URL-Muster (unter Inhaltstypen), sonst lassen sich Seiten nicht Einträgen zuordnen. Auf Cloudflare Workers benötigt die Synchronisierung den Cron-Trigger aus dem Deployment-Leitfaden von EmDash.
Ein selbst gehostetes Umami muss unter einem öffentlichen Hostnamen erreichbar sein: EmDash lehnt private Adressen ab, daher funktionieren localhost, eine LAN-Adresse oder ein nur per VPN erreichbarer Name nicht.
Um die MCP-Werkzeuge zu nutzen, aktivieren Sie unter Plugins den Agent-Zugriff für das Plugin. Aktivieren Sie ihn nach einem Update, das ein Werkzeug ändert, erneut.
FAQ
Warum zeigt alles null an? Die meisten Einrichtungsfehler führen zu Nullwerten ohne Fehlermeldung. Öffnen Sie Plugins > Umami Analytics und wählen Sie Check setup: Es nennt für jedes gefundene Problem die Lösung.
Warum weichen meine Zahlen vom Umami-Dashboard ab?
Die Tage folgen der Einstellung Time zone: Verwenden Sie in Umami die Zeitzone der Website, sonst weichen die Tageswerte rund um Mitternacht ab. Seiten unter /_emdash werden ausgelassen, und die Summen zählen nur die Hostnamen unter Hostnames to count (Ihre Website-URL und deren www-Form, sofern nicht geändert).
Funktioniert es mit Umami Cloud? Es folgt der veröffentlichten Umami-API, wurde aber noch nicht mit einem Cloud-Konto getestet. Bitte melden Sie Ihre Erfahrungen in den Issues des Repositorys.
Mein Umami steht hinter einem Anmelde-Proxy. Lassen Sie die acht Umami-API-Endpunkte des Plugins ohne ihn durch. Die README listet sie auf, und Umami prüft den API-Schlüssel bei jedem einzelnen.
Wie viele Anfragen stellt es? Eine Synchronisierung stellt höchstens sieben Anfragen an Umami. Das Öffnen der Umami-Analytics-Seite stellt fünf.
Kann ich es ohne Umami ausprobieren? Ja. Setzen Sie Data source auf Demo data und wählen Sie auf der Dashboard-Karte Refresh. Es erzeugt 90 Tage erfundenen Traffic für Ihre echten Einträge. Beim Wechsel der Datenquelle werden alle gespeicherten Zahlen gelöscht, sodass sich Demozahlen nie mit echten vermischen.
Wer kann die Zahlen sehen? Redakteure und Administratoren sehen die Dashboard-Karte, beide Umami-Seiten und die MCP-Werkzeuge. Autoren sehen den Editor-Bereich für ihre eigenen Einträge.
Woher kommen die Kategorietabellen?
Aus Ereignisdaten, die Ihre Website über den data-before-send-Hook des Umami-Trackers an ihre Seitenaufrufe anhängt. Nennen Sie unter Views by event data bis zu drei Eigenschaften. Eine Website, die keine sendet, sieht keine Tabellen.
Wie funktioniert die Lesetiefe?
Ihre Website sendet ein benutzerdefiniertes Ereignis, sobald ein Leser eine bestimmte Tiefe eines Eintrags erreicht, zum Beispiel post_read mit post und depth. Füllen Sie die vier Read-through-Einstellungen entsprechend aus. Standardmäßig sind sie leer, wodurch die Funktion deaktiviert ist.
Welche Sprachen spricht es? Englisch und Deutsch, entsprechend der Admin-Sprache des jeweiligen Benutzers.
Sicherheit
Melden Sie ein Sicherheitsproblem vertraulich über das Advisory-Formular des Repositorys: https://github.com/shanelord01/emdash-umami-analytics/security/advisories/new
Was der Umami-API-Schlüssel kann
Ein Umami-API-Schlüssel hat keine eigenen Berechtigungen. Er kann alles, was der Benutzer kann, der ihn erstellt hat. Ein unter einem Admin-Benutzer erstellter Schlüssel könnte jede Website in Ihrem Umami ändern oder löschen. Erstellen Sie ihn daher unter einem Benutzer mit der Rolle View only, der dem Team der Website mit der Teamrolle View only hinzugefügt wurde. Ein so erstellter Schlüssel kann die Websites dieses Teams lesen und nichts ändern. Das Plugin selbst sendet nur GET-Anfragen.
Netzwerkzugriff
Das Plugin fordert network:request:unrestricted an, weil ein selbst gehostetes Umami auf einem Host liegt, den Sie in den Einstellungen eingeben und den keine feste Hostliste benennen könnte. Es fragt nur die Umami-API-URL aus seinen Einstellungen ab (https://api.umami.is/v1, sofern nicht geändert), wobei der Schlüssel als Bearer-Token mitgesendet wird. Demodaten stellen überhaupt keine Anfragen. EmDash lehnt für jedes Plugin private Adressen ab.
Was gesendet und was gespeichert wird
- Umami erhält den API-Schlüssel, die Website-ID und die zu zählenden Hostnamen. Nichts aus Ihren Inhalten verlässt die Website.
- Der Schlüssel wird als verschlüsselte Einstellung gespeichert (AES-GCM mit
EMDASH_ENCRYPTION_KEY). Ohne diesen Schlüssel lehnt EmDash das Speichern ab, statt ihn im Klartext abzulegen. Das Plugin schreibt ihn nie in seine Protokolle. - Die Datenbank der Website enthält Seitenaufrufe und Besuche pro Tag und Pfad, Website-Summen und Engagement pro Tag, die Zuordnung jedes Pfads zu seinem Eintrag mit den Aufrufzahlen und der Lesetiefe dieses Eintrags sowie den Synchronisierungsstatus mit den Top-Seiten, Referrern und Ländern der letzten Woche. Tageszeilen, die älter sind als Keep daily rows for, werden gelöscht.
Wer was darf
Die Dashboard-Karte, die Seiten Analytics und Per entry sowie die MCP-Werkzeuge erfordern die Redakteursrolle. Der Editor-Bereich erfordert die Autorenrolle und zeigt nur Einträge, die der Benutzer bearbeiten darf. Das Ändern der Einstellungen erfordert die Administratorrolle.
Änderungsprotokoll
0.1.4
- Die Seiten stehen ab EmDash 1.2 in einem Umami-Ordner in der Seitenleiste (Analytics, Per entry). Ihre Adressen bleiben unverändert; ältere EmDash-Versionen listen sie einzeln auf.
- Keine neuen Berechtigungen und keine Änderung an den MCP-Werkzeugen.
0.1.3, 9. Oktober 2026
- Die Tage folgen Ihrer Zeitzone. Bisher waren es UTC-Tage, sodass ein Seitenaufruf vor etwa 10 Uhr in Sydney auf den Vortag fiel. Die neue Einstellung Time zone beginnt bei Australia/Sydney. Legen Sie die Zeitzone der Website in Umami fest.
- Beim Update werden die gespeicherten Zahlen einmal gelöscht und neu aus Umami gelesen, beginnend mit den neuesten. Diagramme und Aufrufe pro Eintrag füllen sich beim Aufholen wieder: auf Node etwa zwei Stunden für 90 Tage und 100 Einträge, auf Cloudflare Workers im Takt des Cron-Triggers. Eine spätere Änderung der Einstellung bewirkt dasselbe.
- Nach Umami benannt, damit sie nicht mit denen eines anderen Plugins verwechselt werden: die Seiten Umami Analytics und Umami per entry (gleiche Adressen), die Umami-Traffic-Karte und der Umami-Editor-Bereich.
- Die Registry-Seite hat Tabs, darunter dieses Änderungsprotokoll, und ein Banner.
- Admin-Korrekturen: kein fälschliches „Keine Seite zugeordnet“, die Top-Seiten des Dashboards decken seine 7 Tage ab, das Tagesdiagramm benennt seine Datenreihe, und der Editor-Bereich nennt den Tag, an dem sein gespeicherter Verlauf beginnt.
- Keine neuen Berechtigungen. Die MCP-Werkzeuge beschreiben ihre Tage jetzt in Ihrer Zeitzone, daher schaltet EmDash den Agent-Zugriff nach dem Update ab. Aktivieren Sie ihn unter Plugins erneut.
0.1.2, 1. Oktober 2026
- Engagement neben den Summen: Absprungrate, durchschnittliche Besuchsdauer und Seiten pro Besuch im Vergleich zum Vorzeitraum sowie ein neues Feld
engagementinsite_totals. - Lesetiefe pro Eintrag (vier Einstellungen, standardmäßig aus) und zwei neue Umami-Endpunkte, die nur bei aktivierter Funktion verwendet werden. Schnelleres Aufholen nach der Installation.
- Aktivieren Sie den Agent-Zugriff nach dem Update unter Plugins erneut.
Vollständiger Verlauf: CHANGELOG.md.