← ClaudeAtlas

orbit-elementor-devlisted

Elementor widget development workflow audit — Widget_Base subclass structure, register_controls() patterns, render() escaping, content_template() for live preview, asset enqueue via get_script_depends() / get_style_depends(), responsive controls, and dynamic-tags integration. Use when the user says "Elementor widget", "create Elementor widget", "Widget_Base", or builds anything for Elementor.
adityaarsharma/orbit · ★ 1 · AI & Automation · score 55
Install: claude install-skill adityaarsharma/orbit
# 🪐 orbit-elementor-dev — Elementor widget development Elementor's widget API has its own rhythm — subclass `Widget_Base`, register controls, render with escaping. This skill audits that you're following the modern (3.18+) patterns. --- ## Quick start ```bash claude "/orbit-elementor-dev Audit ~/plugins/my-plugin/widgets/ for Elementor widget best practices." ``` --- ## What it checks ### 1. Widget structure ```php class Widget_My_Hero extends \Elementor\Widget_Base { public function get_name() { return 'my-hero'; } public function get_title() { return __( 'My Hero', 'my-plugin' ); } public function get_icon() { return 'eicon-banner'; } public function get_categories() { return [ 'my-plugin' ]; } public function get_keywords() { return [ 'hero', 'banner' ]; } protected function register_controls() { $this->start_controls_section( 'content_section', [ 'label' => __( 'Content', 'my-plugin' ), ] ); $this->add_control( 'title', [...] ); $this->end_controls_section(); } protected function render() { ... } protected function content_template() { ... } // Live editor preview } ``` ### 2. Register the widget ```php add_action( 'elementor/widgets/register', function( $widgets_manager ) { $widgets_manager->register( new \My_Plugin\Widget_My_Hero() ); } ); ``` **Whitepaper intent:** `elementor/widgets/register` (with `r`) is the modern hook. Old `widgets_registered` is deprecated and triggers a console warning in Elementor 3.18+.