=== BlogTraffic ===
Requires at least: 6.0
Requires PHP: 7.4
Stable tag: 1.1.2

BlogTraffic-Zähler mit HTTPS, sicherer Einrichtung und Kompatibilität zum bisherigen Sidebar-Widget.

== Installation ==

Neue Installation: blogtraffic.zip über Plugins → Installieren → Plugin hochladen installieren und aktivieren.
Unter Einstellungen → BlogTraffic die numerische UserID eintragen, die passende Tracking-Domain wählen und Tracking aktivieren.
Bei weiteren Websites die oeffentliche Website-ID aus dem BlogTraffic-Konto eintragen; fuer die Hauptwebsite leer lassen. Erst nach erfolgreicher Domainverifikation zaehlen die Pixel. Hauptdomain und www benoetigen jeweils einen eigenen META-/Datei-/DNS-Nachweis, bevor sie gemeinsam freigegeben sind. Ungueltige Website-IDs sperren das Tracking statt auf die Hauptwebsite zurueckzufallen.
Vor dem Einsatz muss die ausgewählte Domain den BlogTraffic-Tracker über HTTPS ausliefern.
Den Tracking-Pfad aus der Einbindung exakt uebernehmen: normalerweise /track/, bei getrennten Installationen beispielsweise /v2/track/. Alte Pfade werden bei explizitem Namespace absichtlich abgewiesen.
Der Verbindungstest prüft ein neutrales Pixel vom WordPress-Server aus; er bestätigt weder die Konto-Freischaltung noch einen echten gezählten Browserbesuch.
Sein Ergebnis gilt nur fuer den vollstaendigen getesteten Endpunkt. Nach einer Aenderung von Domain oder Tracking-Pfad erneut testen.
Ein anonymer Browserbesuch mit Kontrolle im BlogTraffic-Konto bleibt für den Funktionstest erforderlich.

== Upgrade von 0.3 ==

Vor dem Austausch die bestehenden Plugin-Dateien sichern.
Bei einer flachen Installation in wp-content/plugins/blogtraffic.php die alte Datei und die neuen assets-Dateien aus dem bisherigen Downloadpaket am selben Ort ersetzen.
Bei einer Installation im Verzeichnis dessen blogtraffic.php und assets-Verzeichnis ersetzen.
Alternativ das alte Plugin deaktivieren, blogtraffic.zip installieren und aktivieren. Nicht beide Generationen gleichzeitig aktiv lassen.
Die vorhandenen Optionen blogtraffic_userid, blogtraffic_widget, blogtraffic_colors_vcolor, blogtraffic_colors_bcolor und blogtraffic_widget_width bleiben erhalten.
Die Sidebar-ID blogtraffic-widget bleibt gleich. Der Titel wird jetzt in den BlogTraffic-Einstellungen bearbeitet.
Bereits konfigurierte Installationen behalten blogtraffic.de als HTTPS-Ziel; blogtrack.de kann nach der Domain-Einrichtung gewählt werden.
Tracking ist bei gültiger bisheriger UserID aktiv, sonst bei einer Neuinstallation zunächst aus.
Angemeldete Personen werden standardmäßig ausgeschlossen. Das Backend, Feeds und Vorschauen werden niemals gezählt.
Tracking läuft jetzt auch auf öffentlichen Seiten ohne sichtbares Sidebar-Widget. In den Einstellungen kann es pausiert werden.
Den Seiten-Cache nach Installation oder Einstellungsänderungen leeren. Angemeldete Benutzer müssen vom vollständigen Seiten-Cache ausgeschlossen sein.
Zusätzliche manuelle BlogTraffic-Embeds entfernen, um doppelte Zählung zu vermeiden.

== Zähler und Datenschutz-Einstellungen ==

Es wird der im BlogTraffic-Konto eingestellte Zählerstil verwendet. Die früheren 160/200-Pixel-Farben konfigurieren den Widget-Rahmen; das historische mehrzeilige Statistikbild wird vom derzeitigen Dienst nicht mehr separat angeboten.
Der Seitenbezeichner main bleibt kompatibel mit den bisherigen WordPress-Gesamtdaten.
Das Plugin lädt ein lokales JavaScript und löst höchstens eine Pixelanfrage pro HTML-Seitenaufruf aus. Ein im Browser erzeugter Cache-Wert vermeidet Wiederverwendung aus dem Bild-Cache.
Ohne JavaScript wird kein Aufruf gezählt. Blocker, Do Not Track und Global Privacy Control können ebenfalls die Zählung verhindern.
Das Plugin setzt und liest keine Cookies oder lokalen Kennungen; es sendet keine Seitentitel, besuchten URL-Parameter, Bildschirmdaten oder Referrer.
Das Pixel enthält die öffentliche UserID, p=main und einen zufälligen Cache-Wert. Ohne sichtbares Widget kommt pixel=1 hinzu. Der Empfänger erhält technisch IP-Adresse und HTTP-Header; die Verarbeitung dort hängt von der Serverkonfiguration ab. Bereits vorhandene Browser-Cookies für die Tracking-Domain können mit einer Bildanfrage übertragen werden.
Es wird weder ein API-Key abgefragt noch ein API-Geheimnis an den Browser übergeben.

Bei aktivierter Option "Auf Einwilligung warten" muss die vorhandene Einwilligungslösung nach Zustimmung Folgendes auslösen:

document.dispatchEvent(new Event('blogtraffic:consent'));

Wenn die Einwilligung vor dem Laden des Plugins feststeht, vorher window.BlogTrafficConsent = true setzen.
Ein Widerruf kann mit document.dispatchEvent(new Event('blogtraffic:revoke')) signalisiert werden.
Do Not Track und Global Privacy Control haben weiterhin Vorrang. Der Modus ist eine technische Schnittstelle und enthält keinen eigenen Einwilligungsdialog.

== Entwicklung ==

Der Quellcode liegt unter widgets/wordpress/blogtraffic im BlogTraffic-Repository.
Build: python3 scripts/build-wordpress-plugin.py
Prüfungen: php tests/wordpress-plugin.php und node tests/wordpress-tracker.cjs
Der PHP-Test nutzt WordPress-Stubs. Er ersetzt keine Integration mit einer echten WordPress-Installation.
Es wird keine "Tested up to"-Versionsangabe ohne Integrationstest behauptet.
Die beiden bisherigen Sprach-Downloadnamen bleiben als kompatible Pakete erhalten. Die Oberfläche folgt der WordPress-Sprache; deutsche Originaltexte sowie englische Übersetzungen für en_US und en_GB sind enthalten. Die .po-Quellen und .mo-Kataloge liegen im languages-Verzeichnis.

== 1.1.2 ==

Fehlende Verwaltungsrechte ergeben auch beim Verbindungstest HTTP 403 statt HTTP 500.
