elementor-v3-widget-development
Installation
SKILL.md
Elementor V3 widget development
Build companion-plugin widgets on Elementor's established Widget_Base / Controls_Stack architecture. Treat V3 here as the classic editor/widget model, not as an installed Elementor 3.x version: this API remains available and is used by core widgets in Elementor 4.2.3.
Do not mix this model with Atomic Widgets / Editor V4. Atomic widgets extend classes under Elementor\Modules\AtomicWidgets, declare prop types and styles differently, and remain a moving surface. Never translate a V3 control array into an Atomic schema by guesswork.
When to use this skill
- Create or review a class extending
\Elementor\Widget_Base. - Register widgets, categories, scripts, or styles from an Elementor addon.
- Implement
register_controls(),render(),content_template(), orrender_plain_content(). - Add widget frontend JavaScript through
frontend/element_ready/{widget-name}.default. - Decide whether
is_dynamic_content()may returnfalse. - Diagnose a widget visible in PHP but missing/broken in the editor or frontend.
- Migrate
_register_controls()orelementor/widgets/widgets_registeredto current APIs.
For a complete companion-plugin skeleton and test matrix, read references/widget-contract-and-example.md. Load elementor-v3-widget-controls as well when designing or reviewing the control schema.