Skip to content

vizuh/click-trail-handler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

313 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClickTrail

Attribution usually breaks somewhere between the ad click and the conversion. ClickTrail makes it survive: cached pages, dynamic forms, cross-domain journeys, repeat visits, and consent requirements.

ClickTrail keeps the source of the visit, not a profile of the visitor — first-party, consent-aware capture with no external identification or enrichment calls.

GitHub release License PHP WordPress GitHub stars

Vizuh logo

Read in English
Leia em Portugues (Brasil)
Contributor Guide
Guia de Contribuicao
Technical Docs
WordPress Readme

What ClickTrail Solves

  • No WooCommerce order loses campaign context before revenue is reported.
  • No UTM or click ID disappears after the landing page.
  • No cached or dynamic form submits without attribution.
  • No cross-domain flow resets the source trail.
  • Consent-aware capture and optional server-side delivery live in one plugin.

ClickTrail is designed to keep first-touch and last-touch context alive until the point where WordPress actually needs it: WooCommerce orders, form submissions, browser events, and optional downstream delivery.

Core Capabilities

  • Capture: first-touch and last-touch attribution, referrers, classic and extended UTMs, click IDs, browser identifiers, retention, and cross-domain continuity.
  • WooCommerce: order attribution, enriched purchase payloads, thank-you page purchase pushes, optional list-view and cart storefront events, richer Woo dataLayer support, and post-purchase milestones.
  • Forms: automatic hidden-field enrichment for Contact Form 7 and Fluent Forms, compatible hidden-field population for Gravity Forms and WPForms, cached-page fallback, dynamic-content support, and WhatsApp continuity.
  • Events: browser collection, dataLayer pushes, sGTM compatibility mode, webhook intake, lifecycle updates, and optional Woo storefront signals.
  • Delivery: optional server-side transport, retries, diagnostics, conflict scanning, backup/restore, and consent-aware dispatch.

Latest Release: 1.7.0

  • GF helper classes committed (Gf_Channel_Resolver, Gf_Form_Settings_Tab, Gf_Merge_Tags, Gf_Minification_Protector)
  • Admin QA cookie priority fix; wp_logout now clears it immediately
  • lt_channel server-side fallback added alongside ft_channel
  • Channel classifier extended: dclid → Display & Video 360, epik → Pinterest Ads, sccid → Snapchat Ads
  • visitor_id + session_id persisted to GF entry meta and WooCommerce order meta
  • Legacy code removed: dead v1 API controller, URL alias remapping, enable_consent_banner, log_whatsapp_clicks() stub
  • Full release notes: changelog.txt

Documentation By Audience

Repository Map

Contributor Quick Start

  1. Read CONTRIBUTING.md.
  2. Use docs/README.md to find the canonical doc for the area you will change.
  3. Keep product docs, technical docs, and changelog entries aligned with the implementation.

Requirements

  • WordPress 6.5+
  • PHP 8.1+

License

GPL-2.0-or-later. See LICENSE.

About

Consent-aware attribution for WordPress: keeps the source of the visit, not a profile of the visitor. UTMs and click IDs that survive cached pages, dynamic forms, and cross-domain journeys to WooCommerce orders and forms.

Topics

Resources

License

Contributing

Stars

7 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors