get_name() && 'section_background' === $section_id) || ('column' === $element->get_name() && 'section_style' === $section_id)) { $element->start_controls_section( 'eae_animated_gradient', [ 'tab' => Controls_Manager::TAB_STYLE, 'label' => __('EAE - Animated Gradient Background', 'wts-eae') ] ); $element->add_control( 'eae_animated_gradient_enable', [ 'type' => Controls_Manager::SWITCHER, 'label' => __('Enable', 'wts-eae'), 'default' => '', 'label_on' => __( 'Yes', 'wts-eae' ), 'label_off' => __( 'No', 'wts-eae' ), 'return_value' => 'yes', 'prefix_class' => 'eae-animated-gradient-', 'render_type' => 'template', ] ); $element->add_control( 'gradient_background_angle', [ 'label' => __( 'Angle', 'wts-eae' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ 'deg' ], 'range' => [ 'deg' => [ 'min' => -45, 'max' => 180, 'step' => 2, ], ], 'default' => [ 'unit' => 'deg', 'size' => -45, ], 'selectors' => [ '{{WRAPPER}} .box' => 'width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'eae_animated_gradient_enable' => 'yes', ] ] ); $repeater = new Repeater(); $repeater->add_control( 'eae_animated_gradient_color', [ 'label' => __('Add Color' , 'wts-eae'), 'type' => Controls_Manager::COLOR, ] ); $element->add_control( 'gradient_color_list', [ 'label' => __('Color' , 'wts-eae'), 'type' => Controls_Manager::REPEATER, 'fields' => array_values($repeater->get_controls()), 'title_field' => 'Color {{{eae_animated_gradient_color}}}', 'show_label' => true, 'default' => [ [ 'eae_animated_gradient_color' => '#00a6d8' ], [ 'eae_animated_gradient_color' => '#b800c9' ], [ 'eae_animated_gradient_color' => '#e57600' ] ], /*'selectors' => [ '{{WRAPPER}}' => 'background : linear-gradient({{gradient_background_angle.SIZE}}{{gradient_background_angle.UNIT}} );', ],*/ 'condition' => [ 'eae_animated_gradient_enable' => 'yes', ] ] ); $element->end_controls_section(); } } public function _before_render($element){ if($element->get_name() != 'section' && $element->get_name() != 'column'){ return; } $settings = $element->get_settings(); //echo '
'; print_r($settings); echo '
'; if($settings['eae_animated_gradient_enable'] == 'yes') { $angle = $settings['gradient_background_angle']['size']; $element->add_render_attribute('_wrapper' , 'data-angle' , $settings['gradient_background_angle']['size'].'deg'); $gradient_color_list = $settings['gradient_color_list']; foreach ($gradient_color_list as $gradient_color) { $color[] = $gradient_color['eae_animated_gradient_color']; }; $colors = implode(',', $color); $element->add_render_attribute('_wrapper' , 'data-color' , $colors); ?> get_name() != 'section' && $widget->get_name() != 'column' ) { return $template; } $old_template = $template; ob_start(); ?> <# color_list = settings.gradient_color_list; angle = settings.gradient_background_angle.size; var color = []; var i = 0; _.each(color_list , function(color_list){ color[i] = color_list.eae_animated_gradient_color; i = i+1; }); view.addRenderAttribute('_wrapper', 'data-color', color); #>