start_controls_section( 'list_section', [ 'label' => esc_html__('List', 'elementor-addon'), ] ); $repeater = new Repeater(); $repeater->add_control( 'image', [ 'label' => esc_html__('Image', 'elementor-addon'), 'type' => Controls_Manager::MEDIA, 'default' => [ 'url' => Utils::get_placeholder_image_src(), ], ] ); $repeater->add_control( 'URL', [ 'label' => esc_html__('URL', 'elementor-addon'), 'type' => Controls_Manager::URL, 'default' => [ 'url' => '#', ], 'dynamic' => [ 'active' => true, ], ] ); $this->add_control( 'images', [ 'label' => esc_html__('Images', 'elementor-addon'), 'type' => Controls_Manager::REPEATER, 'fields' => $repeater->get_controls(), 'default' => [ [ 'image' => [ 'url' => Utils::get_placeholder_image_src(), ], ], ], ] ); $this->end_controls_section(); } protected function render() { $settings = $this->get_settings_for_display(); if (empty($settings['images'])) { return; } ?>