FocusWeb AI Crawler Monitor – Track, Verify & Block AI Bots
Changelog
2.0.0
NEW — Verified Bot Detection: every logged crawler visit is checked against vendor-published IP ranges (OpenAI, Perplexity; refreshed daily) or documented reverse-DNS rules (Google, Apple, Amazon, ByteDance; processed in an hourly background batch) and labeled Verified, Spoofed, or Unverifiable. Verdict badges, a verification filter, verified-share and spoofed-visits summary cards, and a Verification column in the CSV export. DNS lookups never run in the visitor request path.
NEW — Crawl Control page: choose per bot between Monitor (default), Disallow via robots.txt, Block (403), and Block only fakes. Includes plain-language explanations of every action, bot categories (AI training / AI search / on-demand fetcher), one-click presets, and per-bot referral-tradeoff hints computed from your own AI Referrals data.
NEW — “Block only fakes”: 403 visits that claim a bot’s User-Agent but fail verification, while the genuine crawler keeps its access. Never blocks when no vendor verification method exists, and never blocks logged-in users.
NEW — robots.txt manager: Disallow rules served via the WordPress virtual robots.txt (no filesystem writes), live preview of the final merged robots.txt, and conflict detection for physical robots.txt files and SEO plugins (Yoast SEO, Rank Math, All in One SEO).
NEW — robots.txt compliance flag: bots that keep visiting more than 48 hours after being disallowed are labeled “Ignores robots.txt” on the Crawl Control page.
NEW — Blocked-requests tracking: blocked visits are logged with a 403 status (never silently dropped) and surfaced in a Blocked summary card and a Status column in the raw log.
NEW — developer filters: aicm_known_bots, aicm_verification_config, and aicm_block_decision.
Database: the log table gains an indexed verification column; existing installs are migrated automatically on update, no action needed.
Removed the Settings-page auto-update toggle (added in 1.4.0) to keep the plugin fully clear of WordPress update routines per Plugin Check guidance. Use the native “Enable auto-updates” link on the Plugins screen instead — any preference already set there is untouched.
Settings saves now merge with existing options, and the display name gained “Track, Verify & Block AI Bots”. Slug, settings, and data are unchanged — updates are seamless, and behavior stays monitoring-only until you opt in on the Crawl Control page.
1.4.0
Added an opt-in auto-update toggle to the Settings page. It reads and writes WordPress core’s own auto_update_plugins list directly, so it always stays in sync with the native “Enable auto-updates” link on the Plugins screen — off by default, same as core.
Added a “Crawl-to-Referral Gap” insight and a per-day-per-source chart to the AI Referrals page, showing how much AI crawling actually converts into real referral traffic.
Expanded the readme with guidance on acting on this data, an honest note on llms.txt’s actual (unconfirmed) adoption status by AI platforms, and a roadmap section.
1.2.4
Directory listing optimization: swapped the oversaturated seo tag for analytics, added a Quick Start section, and worked in AEO (answer engine optimization) and “track” terminology to better match how site owners search for this plugin on WordPress.org. No functional changes.
1.2.3
Added plugin directory assets: icon, banner, and screenshots for the WordPress.org listing. No functional changes.
1.2.2
Plugin Check follow-up: annotated remaining PluginCheck.Security.DirectDB.UnescapedDBParameter warnings in class-logger.php with justified ignore comments (all queries use fixed internal table-name identifiers passed through $wpdb->prepare() for any real parameters — no functional change).
1.2.1
Fixes from WordPress.org plugin review: updated bundled Chart.js from 4.4.4 to the latest stable 4.5.1, and replaced the raw inline script block on the llms.txt Generator page with a properly enqueued wp_enqueue_script() file (assets/llms-generator.js).
1.2.0
Added AI Referral Traffic tracking: detects human click-throughs from AI answer engines (ChatGPT, Perplexity, Microsoft Copilot, Google Gemini, Claude, Meta AI, You.com) via the Referer header or matching utm_source parameters, with a best-effort captured query where the referring platform exposes one (most reliably on Perplexity). Adds a new “AI Referrals” dashboard (summary cards, captured-queries table, paginated raw log, CSV export) and per-source tracking toggles on the Settings page. Existing sites will get the new database table automatically on next page load after updating.
1.1.0
Renamed to “FocusWeb AI Crawler Monitor” and re-slugged to focusweb-ai-crawler-monitor to comply with WordPress.org’s plugin naming policy (unique/brand-prefixed name required for directory submission). No functional changes.
1.0.1
Compliance fixes for the WordPress.org Plugin Check tool: removed placeholder Plugin URI/Domain Path headers, dropped the discouraged manual load_plugin_textdomain() call, justified/annotated direct-DB and nonce-verification warnings, prefixed template-local variables, and updated readme metadata (tags, tested-up-to, short description).
1.0.0
Initial release: bot detection and logging, admin dashboard with summary cards and Chart.js visualization, most-crawled URL and raw log tables with CSV export, settings page (tracked bots, retention, IP anonymization, excluded paths), and llms.txt generator.