SFR Analytics Hub

Changelog

1.8.2

  • Fixed: Hub “Traffic by Source” chart now supports older feeder data where pageviews were stored as views instead of visits.

1.8.1

  • Fixed: Traffic Sources % now correctly represents % of visitors (not visits/views)
  • Updated: Email/print templates header to match the new % Visitors meaning
  • Updated: Online Now label + review prompt UX improvements for admins

1.8.0

  • Added: Online Now controls as a dedicated dashboard row for cleaner UX
  • Added: Online-only auto-refresh toggle (off by default) with 15s/30s/60s intervals
  • Added: Active Sites Now mini-panel showing which connected sites currently have live visitors
  • Improved: Hub dashboard readme/docs wording to clarify live online visibility across all connected sites

1.7.0

  • New: Email Report Groups — create multiple report groups with different site selections, recipients, and schedules
  • New: Each group can target specific sites or all sites
  • New: Independent weekly/monthly schedule per group
  • New: Test email per group from the Reports tab
  • Improved: Cron runs daily and checks each group’s frequency, avoiding missed sends
  • Migration: Existing single-report settings automatically converted to a report group
  • Compliance: moved dashboard/sites JavaScript and print CSS to proper WordPress enqueue hooks
  • Compliance: updated bundled Chart.js to current stable release
  • Compliance: WordPress.org package is free-only with a fixed 3-site limit (no licence-key unlock flow)

1.6.1

  • Fixed: Tested up to updated to WordPress 6.9
  • Fixed: prepare() placeholder unpacking for dynamic IN() queries
  • Fixed: added wp_unslash() before sanitizing site IDs during sync
  • Added: phpcs annotations for Application Password inputs and display-only GET parameters

1.6.0

  • Changed: free tier now includes 3 sites (previously 2)
  • Changed: admin menu position adjusted to sit alongside SFR Analytics
  • Changed: site-limit messaging simplified in the admin UI
  • Fixed: added translators comments for all translatable strings with placeholders
  • Fixed: all number output now properly escaped for security compliance
  • Fixed: phpcs annotations for legitimate fclose() calls on php://output
  • Updated: Plugin URI and all links point to supportfromrichard.co.uk/sfr-analytics/
  • Updated: readme.txt rewritten for WordPress.org submission

1.5.4

  • Redesigned email reports: both weekly and monthly digests now include Today, 7-day, and 30-day summaries with trend comparisons
  • Added trend lines showing delta and percentage change vs previous period
  • Email reports now include Top Content and Top Traffic Sources tables
  • Added “View Full Dashboard” button and settings link in email footer
  • Print report template updated to match new email layout
  • Frequency setting now controls only send schedule — report content is always the same

1.5.3

  • Fix: Email reports now correctly display data (extract fix for template variables)

1.5.2

  • Added: Category toggle buttons (All, None, All Private, All Client) for quick site filtering on dashboard
  • Added: Site category labels (P/C) shown next to each site checkbox for quick identification
  • Improved: Date and site filter selections now persist in browser URL — survives page refresh
  • Improved: Manual date input changes now auto-reload the dashboard

1.5.1

  • Fix: Refresh button now correctly triggers data sync before reloading dashboard
  • Fix: Auto-sync on first dashboard visit when local data table is empty (e.g. after upgrade)

1.5.0

  • Major: Permanent local data storage — Hub now stores daily analytics snapshots in its own database
  • Dashboard loads instantly from local data; no HTTP requests to feeder sites during rendering
  • Automatic hourly background sync fetches new data from all connected sites
  • Initial 90-day historical backfill runs automatically when a new site is added
  • Refresh button triggers an on-demand sync (fetches missing days + today) then reloads dashboard
  • Data Retention setting controls how many days of data to keep (default 1 year, max 5 years)
  • Per-site sync status visible on the Settings page (days stored, date range)
  • Site deletion now cleans up stored daily data
  • Reset Hub Data now clears permanent daily data alongside cache and audit log

1.4.0

  • Dashboard now loads instantly with a spinner; data is fetched via AJAX in the background
  • Changing dates, site filters, or clicking Refresh no longer triggers a full page reload
  • Added “Last 24 Hours” date preset button
  • Charts reinitialise cleanly after AJAX content injection
  • Error handling: timeout and failure display a retry button instead of a blank page
  • Improved overall dashboard responsiveness, especially with many connected sites

1.0.0

  • Initial release
  • Multi-site aggregation
  • Secure API integration
  • Caching and rate limiting
  • Audit logging

Plugin Website
Visit website

Version:
1.8.2
Last Updated
March 23, 2026
Requires
WordPress 6.0
Tested Up To
WordPress 6.9.4
Requires PHP
7.4

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.