A/B Testing

A/B-Testing-Plugin für Payload CMS v3 und Next.js, das Seitenvarianten in bestehenden Collections anlegt und Traffic über Edge-Middleware verteilt.

Community 26 224/Wo. MIT v2.10.1

Installation

pnpm add @focus-reactive/payload-plugin-ab

Über

Das Plugin erweitert Payload CMS v3 mit A/B-Testing für Next.js-Projekte. Redakteure legen Seitenvarianten direkt in der Collection der Originalseite an und geben für jede Variante einen Traffic-Anteil vor. Eine separate Varianten-Collection oder manuelle Verdrahtung entfällt. Bei jedem Speichern oder Löschen berechnen injizierte `beforeChange`-, `afterChange`- und `afterDelete`-Hooks ein pfadbasiertes Varianten-Manifest und schreiben es in einen Storage-Adapter. Das Paket liefert zwei Adapter: `payloadGlobalAdapter` speichert das Manifest in einem Payload-Global, `vercelEdgeAdapter` schreibt es in die Vercel Edge Config für Lesezugriff im Sub-Millisekunden-Bereich. Die Next.js-Middleware liest das Manifest an der Edge und leitet eingehende Requests an die zugewiesene Variante um, bevor das Rendering beginnt. Ein Datenbank-Roundtrip entfällt dabei. Varianten-Dokumente sind über das injizierte Feld `_abVariantOf` mit der Originalseite verknüpft. Das Plugin blendet Varianten aus der Listenansicht der Collection aus, setzt Slug- und Tenant-Felder für Varianten auf schreibgeschützt und validiert, dass die Summe der Traffic-Anteile 99 nicht überschreitet. Der Originalseite bleibt somit mindestens 1 Prozent. Traffic-Anteile sind an den Draft- und Publish-Lebenszyklus gebunden: Eine Änderung im Variants-Panel der Seitenleiste wird über das virtuelle Feld `_abPendingPercentages` zwischengespeichert und wirkt sich erst auf den Live-Traffic aus, wenn die Originalseite veröffentlicht wird. Bei aktivierter Payload-Lokalisierung erzeugt das Plugin automatisch locale-spezifische Manifesteinträge. Ein optionales `tenantField` unterstützt Multi-Tenant-Setups. Für die Messung lielt die React-Komponente `ExperimentTracker` die Bucket- und Visitor-Cookies der Middleware und übergibt sie als Custom-Dimension-Parameter an Google Analytics via `gtag`. Der Endpunkt `POST /api/_ab/duplicate` klont eine bestehende Seite in eine neue Variante mit einem gehashten Slug wie `about--4ji9`.

Paketinformationen

Paketname
@focus-reactive/payload-plugin-ab
Neueste Version
2.10.1
Entpackte Größe
181 kB
Lizenz
MIT
Wöchentliche Downloads
224
Zuletzt veröffentlicht
6. Okt. 2026

Mehr von focusreactive

Profil ansehen

Ähnliche Plugins

Mehr in Content