Improve: Scanner migrated to WP_List_Table — native WP styling, checkboxes for future bulk actions, consistent with Manager
Improve: Scanner rows grouped by tag — checkbox, status, and source appear on the first row of each group; location on every row
Improve: Scanner menu title renamed to “All Used Shortcodes”; page title “All Used Shortcodes in Your Content”
Improve: CSS consolidated into shared.css — WP 6.x badge palette, consistent table card style; duplicates removed from scanner.css and manager.css
Improve: Settings page sidebar added — non-dismissible Rate & Review card in a 240px right column
Improve: DataRegistry::get_db_defaults() added as single source of truth for all option defaults; DataInitializer and all get_option() fallbacks now derive from it
Fix: Scan batch size override removed — user’s Posts Per Batch setting is now fully respected; default raised from 10 to 50
Fix: Settings page description for Posts Per Batch updated to explain 50 is a good default
1.1.0
Feature: Scanner shows all matched shortcode instances per post with per-instance View links and visual post grouping
Refactor: Flatten module directories — removed AdminUi/, Core/, Rest/, Api/ subdirs; each feature module is now a single flat folder
Refactor: Settings migrated from WP Settings API to REST — removed SettingsRegistrar, replaced with SettingsRestController
Refactor: Maintenance actions (scanner reset, shortcode reset, factory reset) unified into SettingsRestController via /reset REST endpoint
Refactor: PluginDefaults renamed to DataInitializer and moved to includes/ alongside DataRegistry
Refactor: get_settings_defaults() moved into DataRegistry; dead get_defaults_map() removed
Improve: Settings tab persistence via ?tab= GET param — correct tab rendered from first paint, no JS flash on load
Improve: Tools tab confirmation dialogs replaced with inline two-step confirm UI (no browser confirm() popups)
Improve: Unified toast notification (full-width bottom bar) replaces all separate inline status messages
Improve: Factory reset restores Settings fields from defaults without page reload
Fix: Save Settings button stuck disabled after click due to stale saveStatus reference
Cleanup: Removed dead SETTINGS_GROUP and POST_META_LOCK_PREFIX constants from DataRegistry
1.0.5
Feature: Silenced filter tab on Scanner page (Silenced = any shortcode with granular status “hidden”, regardless of live status)
Improve: “Hide”/”Hidden” terminology renamed to “Silence”/”Silenced” across Manager and Scanner for clarity
Improve: Status badge tooltips on Manager and Scanner — plain-language explanation of what each status means on the front-end plus technical detail in parentheses
Improve: Start Here scanner stats row expanded to 5 cards (added Silenced); “Active” renamed to “Enabled” to match Scanner tab labels
Improve: Start Here stat cards all converted to anchor links (consistent hover/pointer behaviour)
Improve: Start Here section subtitles explain what each stats row is counting (unique tags vs. content usages)
Fix: Silenced shortcodes (granular_status=hidden) now correctly counted and filtered under Silenced tab, not Disabled or Orphaned
1.0.4
Feature: Scan exception — exclude Gutenberg block types (Custom HTML, Code, Preformatted, Verse) from scanner to reduce false positives
Improve: Manager redesign — two-table layout (Registered / Orphaned) with unified filter tabs and search
Improve: Manager filter tabs now on left, search field on right (consistent with Scanner)
Improve: Start Here stats card shows all 5 status counts (All, Enabled, Disabled, Hidden, Orphaned)
Improve: Start Here stats respect the “hide core shortcodes” setting, matching Manager counts
Fix: Manager source column shows “Unknown Source” for numeric/unknown orphan tags instead of wrong plugin name
Fix: Scanner silenced orphan shows “Silenced” badge instead of “Orphaned”
1.0.3
Fix: Strip Gutenberg block comments before scanning to prevent false positive numeric shortcode matches
Fix: Infinite reload loop in Manage Shortcodes page after cache reset (transient-based guard)
Fix: Run scan link in Manager table intercepted by toggle JS
Fix: Sync plugin header Version field
Improve: Settings & Tools page — rename, merge tabs from 4 to 2
Improve: Manager table uses native WP list table styles
Improve: Scanner page declutter with tooltips on button and action links
Improve: Scanner shows hint for hidden core shortcodes instead of broken Manage link
i18n: Add translators comments for sprintf placeholder strings
1.0.2
Refactor: Implement Api Facade pattern for strict module isolation