Pagemetrics for Matomo

Beschreibung

Pagemetrics for Matomo bringt datenschutzfreundliche, serverseitige Analysen nach WordPress und nutzt dafür die PHP-Bibliothek pagemachine/matomo-tracking. Aktiviert sendet das Plugin Seitenaufrufe und optionale Download-Ereignisse von deiner WordPress-Website direkt an eine Matomo-Instanz, ohne den JavaScript-Tracker von Matomo zu laden.

Wichtigste Vorteile:

  • Erfasse Seitenaufrufe serverseitig mit voller Kontrolle über Attribute wie Titel, URL und Referrer.
  • Optionales Download-Tracking schreibt Dateilinks um und protokolliert den Klick, bevor Besucher weitergeleitet werden.
  • Multisite-fähig – Netzwerk-Admins können Standardwerte definieren, einzelne Websites können sie überschreiben.
  • Respektiert Do-Not-Track- und Global-Privacy-Control-Header über die zugrunde liegende Bibliothek.
  • Protokolliert Probleme im WordPress-Debug-Log, wenn WP_DEBUG aktiv ist.

Du brauchst Unterstützung bei Matomo oder serverseitigem Tracking? Pagemachine bietet Beratung, Implementierung und fortlaufenden Support über unsere Pagemetrics-Lösung. Mehr Infos: Pagemetrics.eu

Entwickler-Hooks

  • pm_matomo_tracking_should_track_request — Gib false zurück, um das Tracking für die aktuelle Anfrage zu überspringen.
  • pm_matomo_tracking_should_rewrite_downloads — Gib false zurück, um die originalen Download-URLs für den aktuellen Beitrag zu behalten.
  • pm_matomo_tracking_is_download_url — Entscheide, ob eine bestimmte URL umgeschrieben werden soll (erhält URL und Standard-Endungsliste).
  • pm_matomo_tracking_download_extensions — Passe die Liste der Dateiendungen an, die als Downloads zählen.
  • pm_matomo_tracking_download_url — Passe die erzeugte Weiterleitungs-URL fürs Download-Tracking an.
  • pm_matomo_tracking_download_redirect_status — Ändere den HTTP-Statuscode, der beim Weiterleiten zur Originaldatei genutzt wird.
  • pm_matomo_tracking_log_message — Lausche auf Debug-Meldungen, die ausgegeben werden, solange WP_DEBUG aktiv ist.

Beispiele

// Skip tracking for administrators.
add_filter('pm_matomo_tracking_should_track_request', static function ($shouldTrack) {
    return current_user_can('manage_options') ? false : $shouldTrack;
});

// Keep original download URLs on the privacy policy page.
add_filter('pm_matomo_tracking_should_rewrite_downloads', static function ($shouldRewrite) {
    return is_page('privacy-policy') ? false : $shouldRewrite;
});

// Force CDN assets to be treated as downloads.
add_filter('pm_matomo_tracking_is_download_url', static function ($decision, $url) {
    return str_contains($url, 'cdn.example.com/assets/') ? true : $decision;
}, 10, 2);

// Add extra file types to download tracking.
add_filter('pm_matomo_tracking_download_extensions', static function ($extensions) {
    $extensions = array_merge($extensions, ['svg', 'heic']);
    return array_unique($extensions);
});

// Append a checksum to rewritten download URLs.
add_filter('pm_matomo_tracking_download_url', static function ($trackingUrl, $target, $label) {
    $checksum = substr(hash('sha256', $target . $label), 0, 12);
    return add_query_arg('pm_checksum', $checksum, $trackingUrl);
}, 10, 3);

// Use a 307 redirect instead of the default 302.
add_filter('pm_matomo_tracking_download_redirect_status', static function () {
    return 307;
});

// Forward debug messages to the PHP error log while developing.
add_action('pm_matomo_tracking_log_message', static function ($level, $message) {
    if (!defined('WP_DEBUG') || WP_DEBUG !== true) {
        return;
    }

    // phpcs:ignore WordPress.PHP.DevelopmentFunctions.error_log_error_log
    error_log(sprintf('[Pagemetrics for Matomo][%s] %s', strtoupper((string) $level), $message));
}, 10, 2);

Screenshots

  • Pagemetrics for Matomo Einstellungen

Installation

  1. Lade das Plugin-Verzeichnis pagemetrics-for-matomo inklusive vendor/-Ordner in den Ordner wp-content/plugins deiner Website hoch.
  2. Aktiviere das Plugin über Plugins Pagemetrics for Matomo in WordPress.
  3. Open Settings Pagemetrics for Matomo and configure:
    • Matomo-URL (z. B. https://matomo.example.com/)
    • Standard-Matomo-Website-ID
    • Optionales Auth-Token (erforderlich für IP-Tracking und andere privilegierte Attribute)
    • HTTP-Timeout für Matomo-Anfragen
    • Schalter für Download-Tracking, falls das Plugin Dateilinks automatisch umschreiben soll
  4. (Multisite) Netzwerk-Admins können Standardwerte unter Netzwerkverwaltung Einstellungen Pagemetrics for Matomo festlegen. Einzelne Websites können diese Werte auf ihrer lokalen Einstellungsseite überschreiben.

Das Plugin sendet Daten, sobald Matomo-URL und Website-ID eingetragen sind.

FAQ

Muss ich mein Matomo-Auth-Token weitergeben?

Nein. Das Auth-Token ist optional. Gib es nur an, wenn du IP-Adressen weitergeben oder Matomo-Parameter nutzen musst, die eine Authentifizierung erfordern. Das Token wird serverseitig gespeichert und nie im Browser gezeigt.

Kann ich das Umschreiben von Download-Links deaktivieren?

Ja. Lass den Schalter Downloads nachverfolgen in den Einstellungen deaktiviert. Du kannst auch den Filter pm_matomo_tracking_should_rewrite_downloads nutzen, um das Umschreiben programmatisch für bestimmte Beiträge oder Dateitypen zu deaktivieren.

Was passiert, wenn Matomo ausfällt?

Anfragen nutzen ein konfigurierbares HTTP-Timeout (Standard drei Sekunden). Wenn Matomo nicht erreichbar ist, wird das Tracking übersprungen und eine Warnung protokolliert (nur wenn WP_DEBUG aktiv ist). Das Rendering läuft normal weiter.

Rezensionen

Für dieses Plugin gibt es keine Rezensionen.

Mitwirkende und Entwickler

„Pagemetrics for Matomo“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

„Pagemetrics for Matomo“ wurde in 1 Sprache übersetzt. Danke an die Übersetzer für ihre Mitwirkung.

Übersetze „Pagemetrics for Matomo“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.

Änderungsprotokoll

1.0.0

  • Erstveröffentlichung mit serverseitigem Seitenaufruf-Tracking, optionalem Download-Tracking und Multisite-Unterstützung.