Skip to content

Releases: blindseer316/visitor-trails

v2.9.2

Choose a tag to compare

@blindseer316 blindseer316 released this 03 Sep 13:05

Changed in 2.9.2

  • Page-step row no longer sits in a blue background card — the purple title badge remains the visual anchor, but everything now sits flush left instead of inset in a colored box.
  • Click-item rows: background changed to `rgba(255,254,243,0.48)`, font size reduced to 11px.

v2.9.1

Choose a tag to compare

@blindseer316 blindseer316 released this 03 Sep 12:49

Changed in 2.9.1

  • Page title badge set to explicit 12px (was inheriting 11px from the base badge style).
  • Page icon moved inside the purple title badge, now inheriting its purple color.
  • Entry Page column on the dashboard is now clickable (opens in a new tab).
  • Added an explanatory tooltip to the click label ("Text of the clicked link/button"), same pattern as the section tag.

v2.9.0

Choose a tag to compare

@blindseer316 blindseer316 released this 03 Sep 12:41

Changed in 2.9.0

  • ID/class and section-tag text darkened and enlarged for legibility (was too small/washed out).
  • Page icon swapped from a globe emoji to the project's own `page-icon.svg`, inlined so it colors/sizes via CSS.
  • Page title now shown in a purple badge — the visual prominence the section tag used to wrongly carry now belongs to the page identity.
  • "Show technical details" renamed to "Show/Hide IDs/Classes" with a clearer tooltip, and moved before Export CSV so Export CSV is the last toolbar button.

Fixed

  • Export CSV wasn't downloading — it printed the raw CSV as page content instead. The `header()`/`Content-Disposition` calls ran after WordPress had already output the admin page chrome, so they silently did nothing. Moved the export handler to `admin_init`, which runs before any output starts.

v2.8.1

Choose a tag to compare

@blindseer316 blindseer316 released this 03 Sep 12:23

Changed in 2.8.1

  • Sequence arrow moved to click destinations: `↳ Service Areas ... → /service-areas/` now reads as "this click led to this page," instead of appearing before the next page-step.
  • Click destination links now have a light background so they visually pop when scanning down the trail.
  • Page-step entries reordered to icon → page name → page URL (was URL → title); page name is now the bold/primary text, URL a lighter secondary link. Both truncate with full text on hover, and the URL is now clickable (opens in a new tab).
  • Page icon changed from 📄 to 🌐 — clearer at a glance as "this is a page."

v2.8.0

Choose a tag to compare

@blindseer316 blindseer316 released this 03 Sep 12:07

Changed in 2.8.0

  • Trail view visual hierarchy reworked per feedback: the page is now the prominent element (light card + page icon) instead of the section tag.
  • Section tag dropped the purple badge in favor of plain muted `#section-id` text, matching the existing `#id .class` tech-detail style.
  • A `→` now precedes each page path after the first step, reinforcing sequence as you read down the trail.
  • Link-click icon changed to `↳`; the old pre-`element_tag` legacy fallback (which used to be the same glyph) is now a plain `•` so the two stay visually distinct.

Fixed

  • Section detection could report a clicked element as its own "section" when that element had its own `id` (increasingly common now that CTAs get explicit ids) — `closest()` matches the element itself before any ancestor. Now starts the walk from the parent element instead.

v2.7.1

Choose a tag to compare

@blindseer316 blindseer316 released this 31 Jul 06:37

Changed in 2.7.1

  • `Skip Admins` now defaults to unchecked — logged-in admin visits are tracked by default instead of silently skipped. Existing sites that already saved this setting explicitly are unaffected.
  • Long trail-path and click-href URLs (e.g. form prefill links with big query strings) now truncate with an ellipsis instead of breaking the dashboard layout; hover to see the full value.
  • Bot-tier dot and returning-visitor badge tooltips switched from native `title` attributes to the same instant CSS tooltip used for tag descriptions — the tiny single-character hit area made native tooltips flaky enough to look broken.

v2.7.0

Choose a tag to compare

@blindseer316 blindseer316 released this 20 Jul 14:39

Added in 2.7.0

  • Delete button (🗑) on each dashboard row — removes that session and all its pageviews/click events in one click, with a confirm prompt. Useful for pruning test/junk sessions without needing direct DB access.

v2.6.6

Choose a tag to compare

@blindseer316 blindseer316 released this 20 Jul 14:04

Fixed in 2.6.6

  • Dashboard could show "N sessions found" with an empty "No sessions recorded yet" table — the COUNT(*) query succeeded but the full SELECT * row-fetch was silently failing. Now surfaces the actual DB error as a notice on the dashboard when this mismatch happens.
  • The Settings page's DB-error notice never auto-cleared, only via manual Dismiss, so it could keep showing a stale error after the underlying issue was already fixed. Now clears automatically the next time a pageview insert succeeds.

v2.6.5

Choose a tag to compare

@blindseer316 blindseer316 released this 20 Jul 13:54

Fixed in 2.6.5

  • Second schema-drift bug found on earthbreakdesigns.com: `Unknown column` errors were fixed in 2.6.4, but sessions inserts then started failing with `WordPress database error: Processing the value for the following field failed: country` — the `country` column was narrower than the current schema, silently rejecting longer country names.
  • Added `vt_ensure_column_widths()`: verifies every VARCHAR column across all three tables against its canonical minimum width on each admin load, widening anything undersized. General fix for this class of drift, not just `country`.

v2.6.4

Choose a tag to compare

@blindseer316 blindseer316 released this 20 Jul 13:24

Fixed in 2.6.4

  • Root-caused and fixed the DB error found on earthbreakdesigns.com: `Unknown column 'page_url' in 'INSERT INTO'`. The pageviews table's original base columns (`page_url`, `page_title`, `referrer`, `viewed_at`) had no self-healing check the way every later column addition did — a table missing one of them from an older schema state would fail every insert silently, forever. Added `vt_ensure_pageview_columns()` to close that gap.