LLMs.txt Generator – AI Visibility

Changelog

1.5.3

  • UX: Score-refresh button in the AI Visibility Score card header is now a clearly labelled secondary button (“Refresh”) instead of a tiny icon — the loading state (spinner + “Refreshing…” label) is much easier to see.
  • UX: Added a second score-refresh control at the bottom of the main column, so users can re-check the score after editing settings without scrolling back up.
  • UX: The “Your llms.txt URLs” sidebar card now labels each file clearly (📄 llms.txt — compact overview · 📑 llms-full.txt — full page listing) with one-line descriptions, and the full URL path is no longer truncated by an ellipsis cut.
  • UX: Generator card (File Status + Generate Now button) moved to the TOP of the main column as a prominent hero card — the plugin’s primary purpose is llms.txt generation, so it now leads the UI. The AI Visibility Score card moves below it, complementary rather than dominant. Score-card recommendation list reduced from 3 to 1 with a “see all” link to the detail page, keeping the card itself compact.
  • No backend or API changes — purely UI/UX refinements based on user feedback.

1.5.2

  • Critical bugfix: Generate failed with “Pro or Agency licence required” even after a valid Pro key was successfully verified. Root cause: sanitize_settings() was wiping the verified-tier metadata (pro_tier, pro_max_urls, pro_verified_at, pro_email_mask) on every update_option() call from ajax_save_key because it read these fields from the OLD database state (pre-update). The plugin then submitted the stale, empty key on Generate. Fix: accept pro_* values from first (the freshly-set ajax values), fall back to only when is missing them (normal Settings-form save without hidden pro_* fields).
  • Tier-whitelist in ajax_save_key now includes business — the license API returns business for Pro Business plans, which was previously silently downgraded to pro causing UI label mismatches.
  • in_array(…, ‘mode’) check now uses strict comparison (third argument true) to defend against PHP 7 loose-comparison quirks where 0 == ‘free’ could evaluate truthy.
  • API client surfaces the actual server-provided error message on HTTP 401 (e.g., “Key not found”, “Missing X-LLMSTXT-Key header”) instead of a generic “Invalid key” message, making misconfigurations much faster to diagnose.

1.5.1

  • UX-Fix — AI Visibility Score now top of main column: Score card moved from bottom of main column (below Settings form) to the very top, directly under the plugin header. The feature was hard to find — users had to scroll past File Status, Settings, Content selection, Custom Sections, Advanced, URL Exclusions and Save Settings before the score appeared. It is now the first thing visible.
  • Fix — stale “Last error” banner removed: A red “Last error: …” notice could persist at the top of the page from stale llmstxt_last_error option values left behind by earlier versions, even when the licence was valid and no error had occurred. The option is now cleaned up on every page render and no longer displayed.
  • Internal: $last_err variable kept in template scope for backward compatibility but is now always empty (the plugin never sets the underlying option).

1.5.0

  • NEW: AI Visibility Score detail page — dedicated sub-menu under LLMs.txt → AI Visibility Score with full drill-down for every sub-score
  • NEW: Schema.org product table — every sampled product listed with @type / price / offers status and direct WordPress edit links for products with missing markup
  • NEW: llms.txt diagnostic grid — six health checks visualised individually (exists, hasTitle, hasSections, hasEnoughPages, fresh, hasFullVersion) with tooltip explanations
  • NEW: Crawler matrix with snippet generator — six AI bots listed with allow/block status; for blocked bots, a copy-paste-ready robots.txt snippet is generated automatically
  • NEW: Content Quality breakdown (Pro) — 10/25/50 sample pages by tier (Solo/Business/Agency) × 5 per-page checks (title length, meta description, H1, alt-tag ratio, Open-Graph tags); each cell shows the actual value, not just pass/fail
  • NEW: noindex conflicts table — every noindex-flagged page (Yoast, Rank Math, AIOSEO, SEOPress, WooCommerce) listed with source badge and a flag whether it currently appears in llms.txt
  • NEW: 30-day score history sparkline (Pro) — SVG chart with daily snapshots, tier-coloured data points, and delta vs. 7 days ago
  • NEW: Export JSON / Export CSV (ZIP) — full audit downloadable as a single JSON file or as a ZIP archive containing five separate CSVs, one per sub-score
  • NEW: Re-Crawl now button (Pro) — force a fresh Pro-API crawl with a 30-minute cooldown to prevent abuse
  • NEW: Clickable sub-score bars on the main card — jump from the overview directly to the matching drilldown section via auto-scroll and focus highlight
  • Improved: Score history is now recorded automatically for all users (Free and Pro). Free users do not see the chart but their data is preserved if they upgrade later.
  • Improved: Detail-page cache TTL is shorter than the main card (15 min vs. 6 h) so debugging remains responsive.
  • Internal: New backend API endpoint visibility-score-details.php for Pro Content Quality crawls.
  • Internal: 25+ new translation strings added to de_DE.po (full DE coverage of detail page).

1.4.8

  • Updated screenshots to reflect v1.4.7+ UI: Pro Business active dashboard, settings panel with custom sections and URL exclusions, and the new AI Visibility Score introduced in 1.4.0.
  • Removed outdated WooCommerce-section and tier-comparison screenshots — both are now covered by the main dashboard view.
  • Removed orphaned screenshot-5 reference that had no corresponding image file.

1.4.7

  • Layout fix: AI Visibility Score card moved to END of main column (after generator settings) — llms.txt generator is the primary feature, score is supplementary.

1.4.6

  • Spec-conform main card restored: AI Visibility Score is back as the main card above the file status section, exactly as designed in the v1.4.0 spec — SVG half-circle dial on the left, five sub-score bars on the right (Schema.org Coverage 30%, llms.txt Health 25%, AI Crawler Access 15%, Content Quality 15% Pro, noindex Compliance 15%), and the top three recommendations below as boxes with action buttons (Read guide / Re-generate now / Show snippet).
  • Card sized to ~380–420px so file status, generator form and the llms.txt / llms-full.txt URL list stay visible in the same 1200×800 viewport without scrolling.
  • The minimal sidebar widget from 1.4.5 is removed — the sidebar contains only the Pro card, “Your llms.txt URLs”, and Documentation again.

1.4.5

  • Plugin focus restored: AI Visibility Score is no longer the dominant element on the plugin page. The Visibility Score card has been moved out of the main content area into the right sidebar (where the Pro card, “Your llms.txt URLs”, and Documentation cards live), as a small widget showing the score, tier, top recommendation, and a “Learn more” link.
  • The plugin page now opens with the file status (llms.txt is live / size / modified / pages count), generator form, and llms.txt / llms-full.txt URL list immediately visible — exactly as in versions before 1.4.0.
  • Sub-score bars and detail breakdown were removed from the sidebar widget — they belong on a dedicated detail page (planned for 1.5.x).

1.4.4

  • Spec-conform layout: Visibility Score card now matches the original spec — half-circle dial on the left, five sub-score bars on the right, and the top three recommendations as one-line items below. Card height kept compact (around 320px) so the file status, generator form, llms.txt and llms-full.txt sections stay visible above the fold without scrolling.
  • Removed the v1.4.3 “Show details” toggle — full content is shown immediately, in a smaller and tighter format. Sub-score bars are 6px high, recommendation rows are single-line with truncation.

1.4.3

  • UX rebuild: AI Visibility Score card now opens in a compact single-row view (score, tier, recommendation count, refresh, “Show details”). The full sub-scores and recommendations only appear after the user clicks “Show details”. This puts the file status, generator form, llms.txt and llms-full.txt sections back at the top of the screen where users expect them.
  • Score card detail view restyled: thinner sub-score bars, smaller recommendation rows, footer condensed to a single line.

1.4.2

  • Layout fix: AI Visibility Score card was rendered inside the page header flex container, which pushed file status, generator form and llms.txt sections below the visible area. The card is now a standalone section between header and main layout — all existing plugin features (llms.txt status, generator, Pro key, WooCommerce integration) are visible again.
  • AJAX fix: Re-generate / Generate-now buttons in the Visibility Score recommendations returned “Network error”. The button JS sent the security nonce under the wrong parameter name (_nonce instead of nonce), causing WordPress to reject the request with 403. Aligned the Visibility Score JS and the refresh-score handler with the plugin nonce convention.

1.4.1

  • Hotfix: Fixed PHP fatal error on the AI Visibility Score card. The template called a helper function before its conditional declaration, causing a critical-error notice on first render. The helper now uses the existing static class method.

1.4.0

  • NEW: AI Visibility Score — Lighthouse-style 0-100 score with 5 sub-scores (Schema.org Coverage, llms.txt Health, AI Crawler Access, Content Quality, noindex Compliance)
  • NEW: Smart Recommendations — top 3 actionable fixes with one-click action buttons (re-generate, copy robots.txt snippet, etc.)
  • NEW: Multi-SEO-plugin noindex detection — recognises Yoast, RankMath, AIOSEO and excludes flagged pages from llms.txt
  • NEW: WooCommerce Schema.org sampling — checks up to 10 products for valid Product schema with price
  • NEW: Pro mode calls llmstxtgenerator.de API for full Content Quality crawl (10 sample pages: titles, meta, H1, alt-tags, OG-tags)
  • Improved: Score is cached for 6 hours; manual refresh button bypasses cache
  • Improved: Free mode delivers a real local score (no paywall) — re-distributes Pro-only weight across other sub-scores

1.3.0

  • Added: Three Pro tiers (Solo €4.90, Business €9.90, Agency €19.90 per month) — plugin auto-detects which tier your licence belongs to
  • Added: Tier-aware admin sidebar — shows active tier name (Pro Solo / Pro Business / Agency) and URL limit per generation after key verification
  • Added: New options stored after Pro key verification (pro_plan, pro_tier, pro_max_urls, pro_email_mask, pro_verified_at) so the dashboard can render tier-specific UI without re-querying the API
  • Added: Tier overview card in upsell sidebar — visualises Solo/Business/Agency at a glance with prices and URL limits
  • Changed: Upgrade-CTA price updated from “from €7.90/mo” to “from €4.90/mo” (Solo entry tier)
  • Changed: Pro mode label clarifies that Solo, Business or Agency keys are all accepted
  • Improved: Existing customers with previous Pro/Agency keys (€7.90 / €29) continue to work unchanged — backward compatibility preserved at the licensing API
  • Internal: New localized strings (tierSolo, tierBusiness, tierAgency, urlLimit, saving) added to wp_localize_script for translators

1.2.7

  • Added: noindex detection — pages/posts marked noindex in Yoast SEO, Rank Math, SEOPress, or All in One SEO are automatically excluded from llms.txt
  • Added: URL exclusion list — manually exclude specific URLs or path patterns (supports wildcards, e.g. /shop/*)
  • Added: robots.txt Disallow respect — optionally exclude all paths blocked by robots.txt Disallow rules for User-agent: *
  • Fixed: Pro licence key is now automatically saved and settings reloaded after successful key verification — no separate “Save Settings” click required
  • Fixed: Plugin URLs corrected to non-www canonical (llmstxtgenerator.de/agb/ and llmstxtgenerator.de/datenschutz/)

1.2.5

  • Fixed: German umlauts and all non-ASCII characters now display correctly — Apache serves text/plain as ISO-8859-1 by default; plugin now inserts a FilesMatch rule into .htaccess on activation and on every generate to declare UTF-8 charset for llms.txt and llms-full.txt
  • Fixed: .htaccess rule is removed cleanly on plugin deactivation and uninstall

1.2.4

  • Fixed: Plugin now always writes physical llms.txt and llms-full.txt to the WordPress site root so AI crawlers and external checkers (e.g. llmstxtgenerator.de) can access them directly — independent of rewrite rules or caching plugins
  • Fixed: Uninstall now also removes root copies of llms.txt and llms-full.txt

1.2.3

  • Fixed: Middle dot (·) used by SEO plugins as tagline separator no longer appears in output
  • Fixed: Robust fallback in title cleaning: uses both regex and explicit str_replace to handle all separator variants (–, —, |, -)
  • Fixed: Page and post titles stripped of SEO-plugin-appended site-name suffix
  • Fixed: HTML entities in WooCommerce prices and descriptions decoded correctly
  • Fixed: /llms-full.txt now cached in free mode
  • Fixed: Free mode reports error when uploads directory not writable
  • Fixed: Pro mode API URL corrected (www → non-www) to prevent POST redirect stripping auth headers
  • Fixed: Key verification correctly rejects invalid keys

1.2.0

  • Added: External services documentation in readme (llmstxtgenerator.de API)
  • Removed: “Write physical file to site root” option — llms.txt is served dynamically via rewrite rules; no ABSPATH writes required

1.1.0

  • Fixed: Pro mode “Generate Now” now uses correct API endpoint and response format
  • Added: Full German (de_DE) translation for all UI strings, including JavaScript labels
  • Added: uninstall.php for clean removal of all plugin data
  • Changed: File I/O now uses WP_Filesystem API instead of direct PHP functions
  • Changed: Replaced deprecated get_page_by_title() with get_posts() equivalent
  • Changed: Minimum PHP version raised to 8.0 to reflect actual code requirements
  • Improved: All JavaScript labels are now served via wp_localize_script — fully translatable
  • Improved: Plugin header updated with all recommended fields

1.0.0

  • Initial release
  • Free standalone mode for WordPress + WooCommerce
  • Pro API mode with product drill-down
  • Auto-regeneration on content changes
  • Custom Markdown sections support
  • REST API webhook endpoint for external triggers

Plugin Website
Visit website

Author
aireadytools
Version:
1.5.3
Last Updated
May 16, 2026
Requires
WordPress 6.0
Tested Up To
WordPress 6.9.4
Requires PHP
8.0

Share Post

Join our newsletter.

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