<?php if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } use Elementor\Controls_Manager; use Elementor\Group_Control_Typography; use Elementor\Scheme_Typography; use Elementor\Repeater; /** * Class GVAElement_Gallery */ class GVAElement_Gallery extends GVAElement_Base{ public function get_name() { return 'gva-gallery'; } public function get_title() { return __('GVA Gallery', 'zilom-themer'); } /** * Get widget icon. * * Retrieve testimonial widget icon. * * @since 1.0.0 * @access public * * @return string Widget icon. */ public function get_icon() { return 'eicon-slider-push'; } public function get_keywords() { return [ 'gallery', 'images', 'carousel', 'grid' ]; } public function get_script_depends() { return [ 'jquery.owl.carousel', 'gavias.elements', ]; } public function get_style_depends() { return [ 'owl-carousel-css', ]; } protected function register_controls() { $this->start_controls_section( 'section_query', [ 'label' => __('Query & Layout', 'zilom-themer'), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $repeater = new Repeater(); $repeater->add_control( 'image', [ 'label' => __('Image', 'zilom-themer'), 'type' => Controls_Manager::MEDIA, 'show_label' => false, 'default' => [ 'url' => GAVIAS_ZILOM_PLUGIN_URL . 'elementor/assets/images/image-2.jpg', ] ] ); $repeater->add_control( 'title', [ 'label' => __('Title', 'zilom-themer'), 'default' => esc_html__('Luxury Interior', 'zilom-themer'), 'type' => Controls_Manager::TEXT, ] ); $repeater->add_control( 'sub_title', [ 'label' => __('Sub-Title', 'zilom-themer'), 'default' => esc_html__('Charity', 'zilom-themer'), 'type' => Controls_Manager::TEXT, ] ); $this->add_control( 'images', [ 'label' => __('Testimonials Content Item', 'zilom-themer'), 'type' => Controls_Manager::REPEATER, 'fields' => $repeater->get_controls(), 'title_field' => '{{{ title }}}', 'default' => array( array( 'image' => [ 'url' => GAVIAS_ZILOM_PLUGIN_URL . 'elementor/assets/images/image-2.jpg', ], 'title' => esc_html__('Zilom Education', 'zilom-themer'), 'sub_title' => esc_html__('Learning', 'zilom-themer'), ), array( 'image' => [ 'url' => GAVIAS_ZILOM_PLUGIN_URL . 'elementor/assets/images/image-2.jpg', ], 'title' => esc_html__('Zilom Education', 'zilom-themer'), 'sub_title' => esc_html__('Learning', 'zilom-themer'), ), array( 'image' => [ 'url' => GAVIAS_ZILOM_PLUGIN_URL . 'elementor/assets/images/image-2.jpg', ], 'title' => esc_html__('Zilom Education', 'zilom-themer'), 'sub_title' => esc_html__('Learning', 'zilom-themer'), ), array( 'image' => [ 'url' => GAVIAS_ZILOM_PLUGIN_URL . 'elementor/assets/images/image-2.jpg', ], 'title' => esc_html__('Zilom Education', 'zilom-themer'), 'sub_title' => esc_html__('Learning', 'zilom-themer'), ), array( 'image' => [ 'url' => GAVIAS_ZILOM_PLUGIN_URL . 'elementor/assets/images/image-2.jpg', ], 'title' => esc_html__('Zilom Education', 'zilom-themer'), 'sub_title' => esc_html__('Learning', 'zilom-themer'), ), ) ] ); $this->add_control( // xx Layout 'layout_heading', [ 'label' => __( 'Layout', 'zilom-themer' ), 'type' => Controls_Manager::HEADING, ] ); $this->add_control( 'layout', [ 'label' => __( 'Layout Display', 'zilom-themer' ), 'type' => Controls_Manager::SELECT, 'default' => 'grid', 'options' => [ 'grid' => __( 'Grid', 'zilom-themer' ), 'carousel' => __( 'Carousel', 'zilom-themer' ), ] ] ); $this->add_control( 'style', [ 'label' => __('Style', 'zilom-themer'), 'type' => \Elementor\Controls_Manager::SELECT, 'options' => [ 'gallery-style-1' => __( 'Gallery Style I', 'zilom-themer' ), ], 'default' => 'style-1', ] ); $this->add_control( 'image_size', [ 'label' => __('Style', 'zilom-themer'), 'type' => \Elementor\Controls_Manager::SELECT, 'options' => $this->get_thumbnail_size(), 'default' => 'zilom_medium' ] ); $this->add_control( 'pagination', [ 'label' => __('Pagination', 'zilom-themer'), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'condition' => [ 'layout' => 'grid' ], ] ); $this->end_controls_section(); $this->add_control_carousel(false, array('layout' => 'carousel')); $this->add_control_grid(array('layout' => 'grid')); } protected function render() { $settings = $this->get_settings_for_display(); printf( '<div class="gva-element-%s gva-element">', $this->get_name() ); if( !empty($settings['layout']) ){ include $this->get_template('gallery/' . $settings['layout'] . '.php'); } print '</div>'; } } $widgets_manager->register(new GVAElement_Gallery());
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
base.php | File | 15.06 KB | 0644 |
|
box-hover.php | File | 15.88 KB | 0644 |
|
brand-hover.php | File | 7.56 KB | 0644 |
|
brand.php | File | 6.65 KB | 0644 |
|
career-block.php | File | 7.85 KB | 0644 |
|
cart.php | File | 3.12 KB | 0644 |
|
circle-progress.php | File | 4.77 KB | 0644 |
|
countdown.php | File | 6.03 KB | 0644 |
|
counter.php | File | 8.29 KB | 0644 |
|
course-banner-group.php | File | 12.27 KB | 0644 |
|
course-banner.php | File | 9.49 KB | 0644 |
|
course-filter-form.php | File | 6.41 KB | 0644 |
|
course-filter.php | File | 13.42 KB | 0644 |
|
course-users.php | File | 6 KB | 0644 |
|
course.php | File | 16.82 KB | 0644 |
|
events.php | File | 8.6 KB | 0644 |
|
gallery.php | File | 5.92 KB | 0644 |
|
heading-block.php | File | 14.97 KB | 0644 |
|
icon-box-group.php | File | 9.6 KB | 0644 |
|
icon-box-styles.php | File | 12.13 KB | 0644 |
|
image-content.php | File | 8.78 KB | 0644 |
|
locations-map.php | File | 9.05 KB | 0644 |
|
logo.php | File | 5.27 KB | 0644 |
|
map.php | File | 3.54 KB | 0644 |
|
navigation-menu.php | File | 9.89 KB | 0644 |
|
portfolio.php | File | 8.87 KB | 0644 |
|
posts.php | File | 16.2 KB | 0644 |
|
pricing-block.php | File | 8.39 KB | 0644 |
|
rev-slider.php | File | 3.1 KB | 0644 |
|
search-box.php | File | 7.28 KB | 0644 |
|
services-group.php | File | 11.15 KB | 0644 |
|
slider-images.php | File | 3.27 KB | 0644 |
|
teams.php | File | 10.55 KB | 0644 |
|
testimonial.php | File | 13.19 KB | 0644 |
|
user.php | File | 10.62 KB | 0644 |
|
video-box.php | File | 8.25 KB | 0644 |
|
video-carousel.php | File | 6.19 KB | 0644 |
|
work-process.php | File | 12.84 KB | 0644 |
|