Skip to content

v2.2.0 — Leaner schemas, complete widget discovery, atomic + global-classes fixes, security hardening

Choose a tag to compare

@wpacademy wpacademy released this 05 Jun 18:43
· 891 commits to main since this release

Highlights

  • Performance — leaner tool schemas. Per-widget convenience tools now publish a focused set of core parameters instead of a fully-enumerated schema, cutting the MCP tools/list payload (re-sent every request) by roughly a third — with no loss of capability (every other setting passes through to Elementor and stays discoverable via get-widget-schema).
  • Fixed — get-widget-schema now returns the complete control set, and valid styling is no longer rejected. Outside the editor (WP-CLI/REST) Elementor strips a widget's style controls (typography, colours, alignment) from get_controls(); the generator now opts into the full set, and validation is non-fatal so unknown keys pass through to Elementor.
  • Fixed — Low-tools mode is now a true override (exposes exactly the curated essentials regardless of per-tool toggles, which are preserved), the Tools grid greys out to show the paused state, and saving shows a confirmation.
  • Fixed — add-atomic-paragraph saved blank paragraphs (#56); add-atomic-youtube saved empty embeds. Both now write the correct atomic props.
  • Fixed — list-global-classes no-args (resolve-all) no longer fails on a single malformed class (#57).
  • Security — CSS </style> breakout hardening (F-004, preserves all valid CSS), multiline SVG event-handler bypass (F-008), and the admin no longer leaks the server proxy path to JS (F-020).
  • Plus: null document-save fallback (F-005), no_found_rows query perf (F-017/F-018), and a green PHPUnit suite (448 tests).

Closes #56, #57.