Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
firepot
/
next_old
/
wp-content
/
plugins
/
cyarb-toolkit
/
widgets
:
banner-six.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /** * Banner Six Widget */ namespace Elementor; class Cyarb_Banner_Six extends Widget_Base { public function get_name() { return 'Cyarb_BannerSix'; } public function get_title() { return __( 'Banner Six', 'cyarb-toolkit' ); } public function get_icon() { return 'eicon-banner'; } public function get_categories() { return [ 'cyarb-elements' ]; } protected function register_controls() { $this->start_controls_section( 'Cyarb_Banner_Area', [ 'label' => __( 'Banner Six', 'cyarb-toolkit' ), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'title_type', [ 'label' => __( 'Choose Heading Type', 'cyarb-toolkit' ), 'type' => Controls_Manager::SELECT, 'label_block' => true, 'options' => [ 'h1' => __( 'h1', 'cyarb-toolkit' ), 'h2' => __( 'h2', 'cyarb-toolkit' ), 'h3' => __( 'h3', 'cyarb-toolkit' ), 'h4' => __( 'h4', 'cyarb-toolkit' ), 'h5' => __( 'h5', 'cyarb-toolkit' ), 'h6' => __( 'h6', 'cyarb-toolkit' ), ], 'default' => 'h1' ] ); $repeater = new Repeater(); $repeater->add_control( 'add_image', [ 'label' => __('Add Banner Image', 'cyarb-toolkit' ), 'type' => Controls_Manager::MEDIA, 'default' => [ 'url' => Utils::get_placeholder_image_src(), ] ] ); $repeater->add_control( 'banner_title', [ 'label' => __( 'Add Banner Title', 'cyarb-toolkit' ), 'type' => Controls_Manager:: TEXTAREA, ] ); $repeater->add_control( 'banner_desc', [ 'label' =>__('Banner Description', 'cyarb-toolkit'), 'type' => Controls_Manager:: WYSIWYG, 'description' => __('This text editor for p','cyarb-toolkit'), ] ); $repeater->add_control( 'btn_text1', [ 'label' => esc_html__('Button One Title', 'cyarb-toolkit'), 'type' => Controls_Manager:: TEXT, ] ); $repeater->add_control( 'link_type', [ 'label' => esc_html__( 'Link Type', 'cyarb-toolkit' ), 'type' => Controls_Manager::SELECT, 'label_block' => true, 'options' => [ '1' => esc_html__( 'Link To Page', 'cyarb-toolkit' ), '2' => esc_html__( 'External Link', 'cyarb-toolkit' ), ], ] ); $repeater->add_control( 'link_to_page', [ 'label' => esc_html__( 'Link Page', 'cyarb-toolkit' ), 'type' => Controls_Manager::SELECT, 'label_block' => true, 'options' => cyarb_toolkit_get_page_as_list(), 'condition' => [ 'link_type' => '1', ] ] ); $repeater->add_control( 'external_link', [ 'label' => esc_html__('External Link', 'cyarb-toolkit'), 'type' => Controls_Manager:: TEXT, 'condition' => [ 'link_type' => '2', ] ] ); // Button Two $repeater->add_control( 'btn_text2', [ 'label' => esc_html__('Button Two Title', 'cyarb-toolkit'), 'type' => Controls_Manager:: TEXT, ] ); $repeater->add_control( 'link_type2', [ 'label' => esc_html__( 'Link Type 2', 'cyarb-toolkit' ), 'type' => Controls_Manager::SELECT, 'label_block' => true, 'options' => [ '1' => esc_html__( 'Link To Page', 'cyarb-toolkit' ), '2' => esc_html__( 'External Link', 'cyarb-toolkit' ), ], ] ); $repeater->add_control( 'link_to_page2', [ 'label' => esc_html__( 'Link Page', 'cyarb-toolkit' ), 'type' => Controls_Manager::SELECT, 'label_block' => true, 'options' => cyarb_toolkit_get_page_as_list(), 'condition' => [ 'link_type2' => '1', ] ] ); $repeater->add_control( 'external_link2', [ 'label' => esc_html__('External Link', 'cyarb-toolkit'), 'type' => Controls_Manager:: TEXT, 'condition' => [ 'link_type2' => '2', ] ] ); $this->add_control( 'cyarb_slider_items', [ 'label' => esc_html__('Slider Item', 'cyarb-toolkit'), 'type' => Controls_Manager::REPEATER, 'fields' => $repeater->get_controls(), ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style', [ 'label' => __( 'Style', 'cyarb-toolkit' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'title_color', [ 'label' => __( 'Title Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .new-main-banner-wrap-slides-content h1, .new-main-banner-wrap-slides-content h2, .new-main-banner-wrap-slides-content h3, .new-main-banner-wrap-slides-content h4, .new-main-banner-wrap-slides-content h5, .new-main-banner-wrap-slides-content h6' => 'color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'title_type_typography', 'label' => __( 'Title Typography', 'cyarb-toolkit' ), 'selector' => '{{WRAPPER}} .new-main-banner-slides-content h1, .new-main-banner-slides-content h2, .new-main-banner-slides-content h3, .new-main-banner-slides-content h4, .new-main-banner-slides-content h5, .new-main-banner-slides-content h6', ] ); $this->add_control( 'content_color', [ 'label' => __( 'Content Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .new-main-banner-wrap-slides-content p' => 'color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'content_type_typography', 'label' => __( 'Content Type Typography', 'cyarb-toolkit' ), 'selector' => '{{WRAPPER}} .new-main-banner-wrap-slides-content p', ] ); $this->add_control( 'btn_color', [ 'label' => __( 'Button One Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .default-btn-two' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'btn_hcolor', [ 'label' => __( 'Button One Hover Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .default-btn-two:hover' => 'color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'btn_type_typography', 'label' => __( 'Button One Typography', 'cyarb-toolkit' ), 'selector' => '{{WRAPPER}} .default-btn', ] ); $this->add_control( 'btn2_color', [ 'label' => __( 'Button Two Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .optional-btn' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'btn2_hcolor', [ 'label' => __( 'Button Two Hover Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .optional-btn:hover' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'btn2_bordercolor', [ 'label' => __( 'Button Two Border Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .optional-btn' => 'border-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'btn2_type_typography', 'label' => __( 'Button Two Typography', 'cyarb-toolkit' ), 'selector' => '{{WRAPPER}} .optional-btn', ] ); $this->add_control( 'btn1_bg_color', [ 'label' => esc_html__( 'Button One Background Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'btn1_bg_color', 'types' => ['gradient' ], 'selector' => '{{WRAPPER}} .default-btn-two', ] ); $this->add_control( 'btn1divider', [ 'type' => Controls_Manager::DIVIDER, ] ); $this->add_control( 'btn1_bg_hcolor', [ 'label' => esc_html__( 'Button One Background Hover Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'btn1_bg_hcolor', 'types' => ['gradient' ], 'selector' => '{{WRAPPER}} .default-btn-two:hover, .default-btn-two::before', ] ); $this->add_control( 'btn2divider', [ 'type' => Controls_Manager::DIVIDER, ] ); $this->add_control( 'btn2_bg_hcolor', [ 'label' => esc_html__( 'Button Two Background Hover Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'btn2_bg_hcolor', 'types' => ['gradient' ], 'selector' => '{{WRAPPER}} .new-main-banner-wrap-slides-content .banner-btn-box li .optional-btn::before', ] ); $this->add_control( 'divider2', [ 'type' => Controls_Manager::DIVIDER, ] ); $this->add_control( 'sec_bg_color', [ 'label' => __( 'Section Background Color', 'cyarb-toolkit' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .new-main-banner-wrap-slides-item::before' => 'background-color: {{VALUE}}', ], ] ); $this->end_controls_section(); } protected function render() { $settings = $this->get_settings_for_display(); $slider = $settings['cyarb_slider_items']; ?> <div class="new-main-banner-wrap-slides-area"> <div class="new-main-home-wrap-slides owl-carousel owl-theme" data-slider-id="1"> <?php foreach ($slider as $key => $value): $link_one = ''; if($value['link_type'] == 1){ $link_one = get_page_link($value['link_to_page']); } else { $link_one = $value['external_link']; } $link_two = ''; if($value['link_type2'] == 1){ $link_two = get_page_link($value['link_to_page2']); } else { $link_two = $value['external_link2']; } ?> <div class="new-main-banner-wrap-slides-item" style="background-image:url(<?php echo esc_url( $value['add_image']['url'] ); ?>);"> <div class="container"> <div class="new-main-banner-wrap-slides-content"> <<?php echo esc_attr($settings['title_type']);?>><?php echo esc_html( $value['banner_title'] ); ?></<?php echo esc_attr($settings['title_type']);?>> <p><?php echo wp_kses_post( $value['banner_desc'] ); ?></p> <?php if( $value['btn_text1'] != '' || $value['btn_text2'] != '' ): ?> <ul class="banner-btn-box"> <?php if( $value['btn_text1'] != '' ): ?> <li> <a href="<?php echo esc_url( $link_one ); ?>" class="default-btn-two"><?php echo esc_html( $value['btn_text1'] ) ?></a> </li> <?php endif; ?> <?php if( $value['btn_text2'] != '' ): ?> <li> <a href="<?php echo esc_url( $link_two ); ?>" class="optional-btn"><?php echo esc_html( $value['btn_text2'] ) ?></a> </li> <?php endif; ?> </ul> <?php endif; ?> </div> </div> </div> <?php endforeach; ?> </div> </div> <?php } } Plugin::instance()->widgets_manager->register_widget_type( new Cyarb_Banner_Six );