Plugin Directory

Changeset 3495682

Timestamp:
03/31/2026 02:12:03 PM (4 days ago)
Author:
gfazioli
Message:

#### New Features

  • WordPress Settings: new Security options — disable file editor, author archives, Application Passwords
  • WordPress Settings: new Admin Menu options — toggle Media, Pages, Comments, Tools visibility
  • WordPress Settings: new Admin Notices options — disable update nags, admin email verification
  • WordPress Settings: new Writing options — disable self-pings, auto-empty trash with configurable days
  • WordPress Settings: new Reading options — disable emoji scripts, embed scripts, jQuery Migrate, RSS feeds
  • WordPress Settings: new Performance tab — Heartbeat control, Dashicons removal on frontend
  • WordPress Settings: new Media tab — disable big image scaling, custom JPEG quality
  • Cron: delete individual cron jobs with confirmation modal
  • Cron: bulk delete selected cron jobs
  • Cron: search/filter by hook name
  • Cron: sortable columns (hook name, next run, schedule)
  • Cron: row expansion showing signature, interval, and arguments
  • Cron: right-click context menu with Run and Delete actions
  • Cron: colored schedule badges (hourly, daily, weekly, one-time)
  • Cron: time-relative status indicators (overdue, soon, upcoming)
  • Overview: new Database Size quick card with link to Database section
  • Overview: new Scheduled Cron Jobs quick card with link to Cron section
  • Overview: clickable cards navigate to their corresponding section (Posts→Trash, Comments→Trash, Options→Trash)
  • Overview: refresh button to reload all overview data
  • Trash: bulk delete for unapproved, spam, and trashed comments
  • Trash: orphan term relationships listing, single and bulk delete
  • Duplicates: single and bulk delete for duplicate user meta
  • Duplicates: single and bulk delete for duplicate comment meta

#### Security

  • Fixed SQL injection in database optimize and auto-increment reset (table name whitelist)
  • Added schema validation and recursive sanitization for preferences update
  • Added esc_html() to all meta/option/comment values in JSON responses
  • Fixed Disk overview showing NaN for timed-out directory calculations
  • Fixed Disk overview crash when WordPress size data contains error strings
  • Fixed division by zero in Options overview when option count is zero
  • Fixed OverviewCard pulsing indicator on arbitrary >50% values
  • Fixed admin bar removal running too early (before scripts are registered)
  • Fixed XML-RPC error handler using PHP Error class instead of WP_Error
  • Fixed Reset to default not actually resetting options to defaults
  • Fixed each WordPress Settings tab creating a separate OptionsProvider (4 redundant fetches)
  • Fixed hardcoded wp_posts table prefix in SQL subqueries
  • Added $wpdb->prepare() to all orphan detection queries
  • Sanitized cron hook_name and signature inputs
  • Fixed transient query missing prepared statement

#### Improvements

  • Migrated from npm to Yarn
  • Updated @wordpress/scripts from 27.9.0 to 31.7.0
  • Updated Mantine from 7.14.0 to 8.3.18
  • Updated all dependencies to latest compatible versions
  • Migrated to React 18 createRoot API (replaced deprecated wp.element.render)
  • Modernized tsconfig.json (es2020, react-jsx, bundler)
  • Removed all unnecessary import * as React statements (30 files)
  • Removed deprecated MantineProvider withStaticClasses prop
  • Fixed Mantine 8 Image component width/height rendering in header logo
  • Fixed SWR mutate() not revalidating after bulk operations across all views
  • Fixed broken Refresh button in empty Trash/Duplicates view
  • Performance: replaced N+1 user queries with single count_users() call
  • Performance: removed repeated COUNT(*) subqueries in post/comment stats
  • Performance: added LIMIT 1000 to orphan detection queries
  • Fixed Terms crash when excluded term IDs array is empty
  • Removed esc_sql() mixing with prepare() in term relationships
  • Fixed translated strings interpolated in SQL (comments)
  • Fixed duplicate term meta deletion keeping wrong entry (array_pop after delete)
  • Cleaned up dead code: removed unused returnColumnsJson() from Cron and Shortcode providers
  • Cleaned up unused imports and variables in Shortcode component
  • Added error handling to Options/Preferences provider
  • Improved post.ts error throwing with structured status/statusText
Location:
scotty/trunk
Files:
1 added
68 edited

Changeset view not shown, since the total size (4.4 MB) exceeds 4.0 MB

Note: See TracChangeset for help on using the changeset viewer.