'
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ); return $sidebar_args; } endif; add_filter( 'elementor/widgets/wordpress/widget_args', 'colormag_elementor_widget_render_filter' ); // WPCS: spelling ok. if ( ! function_exists( 'colormag_widget_class_names' ) ) : /** * Render the widget classes for Elementor plugin compatibility. * * @param string $widgets_id The widgets of the id. * * @return mixed The widget classes of the id passed. * * @since ColorMag 1.2.3 */ function colormag_widget_class_names( $widgets_id ) { $widgets_id = str_replace( 'wp-widget-', '', $widgets_id ); $classes = colormag_widgets_classes(); return isset( $classes[ $widgets_id ] ) ? $classes[ $widgets_id ] : 'widget_featured_posts'; } endif; if ( ! function_exists( 'colormag_widgets_classes' ) ) : /** * Return all the arrays of widgets classes and classnames of same respectively. * * @return array the array of widget classnames and its respective classes. * * @since ColorMag 1.2.3 */ function colormag_widgets_classes() { $sidebar_class = array( 'colormag_featured_posts_slider_widget' => 'widget_featured_slider widget_featured_meta', 'colormag_highlighted_posts_widget' => 'widget_highlighted_posts widget_featured_meta', 'colormag_featured_posts_widget' => 'widget_featured_posts widget_featured_meta', 'colormag_featured_posts_vertical_widget' => 'widget_featured_posts widget_featured_posts_vertical widget_featured_meta', 'colormag_728x90_advertisement_widget' => 'widget_300x250_advertisement', 'colormag_300x250_advertisement_widget' => 'widget_728x90_advertisement', 'colormag_125x125_advertisement_widget' => 'widget_125x125_advertisement', ); return $sidebar_class; } endif; /** * Load the ColorMag Elementor widgets file and registers it */ if ( ! function_exists( 'colormag_elementor_widgets_registered' ) ) : /** * Load and register the required Elementor widgets file. * * @param Elementor\Widgets_Manager $widgets_manager The widgets manager instance. * * @since ColorMag 1.2.3 */ function colormag_elementor_widgets_registered( $widgets_manager ) { // Require the Widget Base class. require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/class-colormag-elementor-widget-base.php'; // Require the files. // 1. Block Widgets. require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-block-1.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-block-2.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-block-4.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-block-6.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-block-9.php'; // 2. Grid Widgets. require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-grid-2.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-grid-3.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-grid-4.php'; require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-widgets-grid-5.php'; // 3. Global Widgets. require COLORMAG_ELEMENTOR_WIDGETS_DIR . '/colormag-elementor-global-widgets-title.php'; // Register the widgets // 1. Block Widgets. $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Block_1() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Block_2() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Block_4() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Block_6() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Block_9() ); // 2. Grid Widgets. $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Grid_2() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Grid_3() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Grid_4() ); $widgets_manager->register_widget_type( new ColorMag_Elementor_Widgets_Grid_5() ); // 3. Global Widgets. $widgets_manager->register_widget_type( new ColorMag_Elementor_Global_Widgets_Title() ); } endif; add_action( 'elementor/widgets/widgets_registered', 'colormag_elementor_widgets_registered' ); if ( ! function_exists( 'colormag_elementor_category' ) ) : /** * Add the Elementor category for use in ColorMag widgets as separator. * * @since ColorMag 1.2.3 */ function colormag_elementor_category() { // Register widget block category for Elementor section. \Elementor\Plugin::instance()->elements_manager->add_category( 'colormag-widget-blocks', array( 'title' => esc_html__( 'ColorMag Widget Blocks', 'colormag' ), ), 1 ); // Register widget grid category for Elementor section. \Elementor\Plugin::instance()->elements_manager->add_category( 'colormag-widget-grid', array( 'title' => esc_html__( 'ColorMag Widget Grid', 'colormag' ), ), 1 ); // Register widget global category for Elementor section. \Elementor\Plugin::instance()->elements_manager->add_category( 'colormag-widget-global', array( 'title' => esc_html__( 'ColorMag Global Widgets', 'colormag' ), ), 1 ); } endif; add_action( 'elementor/init', 'colormag_elementor_category' ); if ( ! function_exists( 'colormag_elementor_enqueue_style' ) ) : /** * Enqueue the styles for use within Elementor only. * * @since ColorMag 1.2.3 */ function colormag_elementor_enqueue_style() { $suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ? '' : '.min'; // Enqueue the main Elementor CSS file for use with Elementor. wp_enqueue_style( 'colormag-elementor', COLORMAG_ELEMENTOR_URL . '/assets/css/elementor' . $suffix . '.css', array(), COLORMAG_THEME_VERSION ); wp_style_add_data( 'colormag-elementor', 'rtl', 'replace' ); } endif; add_action( 'elementor/frontend/after_enqueue_styles', 'colormag_elementor_enqueue_style' );