V2.0.0
Release v2.0.0 — Funnel Stats Dashboard Upgrade
This release introduces a major upgrade for DN Burst Funnel Stats, turning the plugin into a more complete WooCommerce funnel analytics dashboard with improved tracking controls, AJAX reporting, import/export support, date filtering, charts, and better admin UX.
🚀 New Features
1. Standalone Admin Menu
Added a dedicated top-level WordPress admin menu for the plugin.
New menu:
Funnel Stats- Dashboard page
- Settings page
- Import / Export page
- URL Tracking / Ad URLs reporting area
This makes the plugin easier to access and no longer dependent on being hidden inside another admin menu.
2. Full English Admin Dashboard
Updated the plugin admin interface so all visible dashboard content is now in English.
Updated UI text includes:
- Dashboard headings
- Tabs
- Buttons
- Table headers
- Empty states
- Admin notices
- Settings labels
- Import / export messages
- AJAX loading messages
- Error messages
All text is prepared for translation using the plugin text domain:
dn-burst-funnel-stats3. Dashboard and Settings Links on Plugin List Page
Added quick action links under the plugin name on the WordPress Plugins page.
New plugin action links:
- Dashboard
- Settings
This allows admins to open the plugin dashboard or settings directly from the Plugins screen.
4. Complete Funnel Analytics Dashboard
Added a fuller dashboard experience for funnel performance tracking.
Dashboard metrics include:
- Visits
- Add To Cart
- Checkout
- Orders
- Items
- Sales
- Profits
- Conversion Rate
The dashboard now provides a clearer overview of store performance and customer funnel movement.
5. AJAX Dashboard Tabs
Improved dashboard navigation with AJAX-powered tabs.
Tabs can now update smoothly without requiring a full page reload.
Supported dashboard tabs:
- Overview
- Brands
- Ad URLs
- Countries
- Devices
- Products
A fallback is preserved for environments where JavaScript is disabled.
6. AJAX Ad URLs / URL Tracking Table
Added and improved the Ad URLs table with AJAX updates.
The table now supports grouping URL parameter performance by:
- Campaign
- Source
- Medium
Supported URL parameters:
Campaign:
utm_campaign
campaign
Source:
utm_source
source
Medium:
utm_medium
medium
If a value is missing, the table displays:
N/A
Table columns:
- URL Param
- Visits
- Add To Cart
- Checkout
- Orders
- Items
- Sales
- Profits
- Conversion Rate
The table now updates smoothly when switching between Campaign, Source, and Medium.
7. Import / Export System
Added a new Import / Export page for backing up and restoring plugin data.
Export Includes
- Plugin settings
- Tracking settings
- Add-to-cart tracking data
- Page tracking configuration
- Product tracking configuration
- URL tracking configuration
- Plugin schema/version metadata
Export Metadata
The exported JSON includes:
- Plugin name
- Plugin version
- Export date
- Site URL
- Data schema version
Import Modes
Added two import modes:
- Merge with existing data
- Replace existing data
The import process validates JSON structure, checks permissions, uses nonces, sanitizes imported values, and avoids deleting existing data unless explicitly requested.
8. Page and Product Tracking Settings
Added settings to control which pages and products should be tracked.
Page Tracking Modes
- Track full site / full page tracking
- Track only selected pages
Product Tracking Modes
- Track all product pages
- Track only selected products
WooCommerce important pages are supported, including:
- Shop
- Cart
- Checkout
- My Account
- Product pages
This gives admins better control over what traffic should be included in funnel reports.
9. IP Exclusion Rules
Added IP exclusion support to prevent specific visitors from being tracked.
Admins can now add excluded IP addresses in plugin settings.
Supported input:
- IPv4
- IPv6
- One IP address per line
- Optional CIDR-style ranges if supported by the environment
When a visitor IP matches the exclusion list, the plugin no longer records tracking data for that request.
This applies to plugin tracking only and does not affect normal WooCommerce behavior.
10. Bot and Crawler Exclusion Rules
Added bot and crawler filtering to reduce polluted analytics data.
New settings include:
- Exclude known bots and crawlers
- Custom bot user agent keywords
Default bot detection includes common crawlers such as:
- Googlebot
- AdsBot-Google
- Bingbot
- DuckDuckBot
- Facebook External Hit
- TelegramBot
- DiscordBot
- AhrefsBot
- SemrushBot
- MJ12Bot
- DotBot
- PetalBot
- Generic bot/crawler/spider user agents
Matching is case-insensitive.
Bot traffic is ignored by the plugin tracking system and no longer creates unnecessary stats records.
11. Central Tracking Gate
Added a reusable tracking gate to prevent invalid tracking writes.
The plugin now checks whether a request should be tracked before writing stats.
Tracking can be skipped when:
- The visitor IP is excluded
- The request is detected as bot/crawler traffic
- Tracking is disabled
- The current page is not allowed by tracking settings
- The request is not suitable for frontend tracking
This improves data accuracy and keeps analytics cleaner.
12. WooCommerce-Style Date Range Picker
Added an improved date range selector similar to WooCommerce Analytics.
Supported preset ranges:
- Today
- Yesterday
- Week to date
- Last week
- Month to date
- Last month
- Quarter to date
- Last quarter
- Year to date
- Last year
Supported comparison modes:
- None
- Previous period
- Previous year
The date picker now supports AJAX updates so the dashboard can refresh without a full page reload.
13. Custom Date Range Support
Added custom date range selection.
Admins can now select:
- Custom start date
- Custom end date
- Comparison mode
Date values are validated server-side and use the WordPress timezone for consistency.
14. Dashboard Charts
Added chart support to make analytics easier to understand visually.
New chart sections include:
- Funnel chart
- Sales over time chart
- Orders over time chart
- Profits chart
- Conversion rate chart
- Optional top performers chart
Charts update when the date range or comparison mode changes.
The dashboard now has better visual reporting instead of relying only on tables.
15. Data Status Panel
Added a data status area for better visibility into report freshness.
The panel displays:
- Last updated time
- Next update time
- Update now action
The Update now button can refresh plugin report data through AJAX with nonce and permission checks.
16. Better Admin Assets
Moved admin JavaScript and CSS into proper asset files where possible.
Added or improved:
assets/admin.js
assets/admin.css
Assets are only loaded on plugin admin pages to avoid affecting other WordPress admin screens.
🛠 Improvements
Improved Admin UX
- Cleaner dashboard layout
- Better tab navigation
- Better loading states
- Better empty states
- More consistent formatting
- More WooCommerce-like reporting experience
Improved URL Parameter Reporting
URL tracking now handles common campaign/source/medium values more clearly.
Examples of supported values include:
google_ad
abandoned_email
ai_design
Product slug-style URL values are also kept compatible.
Improved Currency and Percentage Formatting
Money and percentage values are now formatted more consistently.
Examples:
- Sales and profits use WooCommerce currency formatting.
- Conversion rate uses percentage formatting.
- Empty values are displayed safely as zero values.
Improved Backward Compatibility
Existing plugin data and options are preserved.
The update adds safe default values for new settings instead of removing or replacing existing data.
New defaults include:
- Empty IP exclusion list
- Bot exclusion enabled by default
- Empty custom bot keyword list
- Default dashboard date range
- Default comparison mode
- Updated schema version option
Improved Security
Added stronger validation and permission checks across admin features.
Security improvements include:
- Nonce checks for settings forms
- Nonce checks for import/export actions
- Nonce checks for AJAX endpoints
manage_optionscapability checks- Sanitized settings input
- Sanitized import data
- Escaped output
- Safer handling of
$_GET,$_POST, and$_SERVER - Prepared SQL queries where dynamic SQL is required
Improved Performance
Added improvements to reduce unnecessary loading and tracking writes.
Performance improvements include:
- Admin assets load only on plugin pages
- Bot/crawler requests can be ignored
- Excluded IP requests can be ignored
- Dashboard data can be refreshed with AJAX
- Heavy updates are protected behind admin actions
- Tracking writes are skipped earlier when requests should not be tracked
🐛 Fixes
Fixed Dashboard Accessibility
The dashboard is now easier to access through a dedicated top-level admin menu and plugin action links.
Fixed Mixed or Incomplete Admin Language
Visible admin UI text has been standardized to English.
Fixed Full Page Reloads on Dashboard Navigation
Dashboard tabs and URL tracking filters now update through AJAX where possible.
Fixed Noisy Tracking from Bots and Crawlers
Known bots, crawlers, and custom user agent keywords can now be excluded from tracking.
This helps prevent inflated visit counts and inaccurate conversion rates.
Fixed Internal / Admin Traffic Pollution
Specific IP addresses can now be excluded from plugin tracking.
This helps prevent owner, developer, or staff traffic from polluting funnel reports.
Fixed Limited Date Filtering
The dashboard now supports richer date ranges and comparison periods.
Admins can compare performance against:
- Previous period
- Previous year
Fixed Weak Import / Export Coverage
Import/export now supports more plugin-related data and includes metadata for safer restoration.
Fixed Inconsistent Tracking Decisions
Tracking write paths now use a shared request-checking flow so exclusions and settings are applied more consistently.
🔐 Security Notes
This release improves security around admin actions and data handling.
Added protection for:
- Settings saves
- AJAX report loading
- Data refresh actions
- Import actions
- Export actions
All sensitive admin actions require proper permissions and nonce validation.
⚙️ Developer Notes
Important updated or added areas may include:
dn-burst-funnel-stats.php
includes/admin-menu.php
includes/dashboard.php
includes/settings.php
includes/import-export.php
includes/ajax.php
includes/tracking.php
includes/helpers.php
includes/date-ranges.php
assets/admin.js
assets/admin.css
New helper logic may include:
dn_bfs_should_track_request()
dn_bfs_is_ip_excluded()
dn_bfs_is_bot_request()New or updated plugin options may include:
dn_burst_funnel_stats_schema_version
dn_bfs_excluded_ips
dn_bfs_exclude_bots
dn_bfs_custom_bot_user_agents
dn_bfs_page_tracking_mode
dn_bfs_selected_pages
dn_bfs_product_tracking_mode
dn_bfs_selected_products
dn_bfs_default_date_range
dn_bfs_default_comparison
✅ Upgrade Notes
Existing users should be able to upgrade without losing historical stats.
Recommended after upgrade:
- Open Funnel Stats → Settings
- Review page/product tracking settings
- Add internal IP addresses to the exclusion list
- Keep bot/crawler exclusion enabled
- Open the dashboard and click Update now
- Verify charts, tables, and date filters display correctly
📦 Version
2.0.0
Summary
Version 2.0.0 is a major feature release focused on turning DN Burst Funnel Stats into a cleaner, more accurate, and more professional WooCommerce funnel analytics dashboard.
Main highlights:
- Standalone admin dashboard
- AJAX reports
- URL tracking table
- Import/export
- IP exclusions
- Bot/crawler exclusions
- WooCommerce-style date filtering
- Dashboard charts
- Data status refresh
- Better security
- Better compatibility
- Cleaner tracking data