add_category( 'streamsera', array( 'title' => __( 'StreamSera', 'streamsera' ), 'icon' => 'eicon-play', 'active' => true, ) ); } /** * Register one widget per element. * * @param object $manager Widgets manager. */ public static function widgets( $manager ) { if ( ! class_exists( '\\Elementor\\Widget_Base' ) ) { return; } require_once __DIR__ . '/Elementor_Widgets.php'; $elements = \StreamSera\Frontend\Elements::all(); /** * Filter the Elementor widget classes (element id → class extending Elementor_Element_Widget). * * @param array $classes Classes. */ foreach ( apply_filters( 'streamsera_elementor_widgets', Elementor_Element_Widget::classes() ) as $id => $class ) { if ( isset( $elements[ $id ] ) && class_exists( $class ) ) { $manager->register( new $class() ); } } } /** * Tint the StreamSera widget icons in the panel so the group reads as one family. */ public static function editor_css() { wp_add_inline_style( 'elementor-editor', '.elementor-element .icon .streamsera-eicon{color:#6366f1}' ); } }