PluginProbe
UiCore Elements – Free widgets and templates for Elementor / 1.3.18
UiCore Elements – Free widgets and templates for Elementor v1.3.18
1.3.18 1.3.17 1.3.16 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.2.0 1.2.1 1.2.2 1.2.3 All 42 releases
← All changes | includes/widgets/logo-grid.php +54 -45 1.0.4 → 1.3.18 View file →
@@ -1,5 +1,6 @@
1 1 <?php
2 +
2 3 namespace UiCoreElements;
3 4
4 5 use Elementor\Controls_Manager;
5 6 use UiCoreElements\UiCoreWidget;
@@ -8,9 +9,10 @@
8 9 use UiCoreElements\Utils\Logo_Trait;
9 10
10 11 defined('ABSPATH') || exit();
11 12
12 -class Logo_Grid extends UiCoreWidget {
13 +class Logo_Grid extends UiCoreWidget
14 +{
13 15
14 16 use Animation_Trait;
15 17 use Grid_Trait;
16 18 use Logo_Trait;
@@ -20,9 +22,9 @@
20 22 return 'uicore-logo-grid';
21 23 }
22 24 public function get_title()
23 25 {
24 - return esc_html__( 'Logo Grid', 'uicore-elements' );
26 + return esc_html__('Logo Grid', 'uicore-elements');
25 27 }
26 28 public function get_icon()
27 29 {
28 30 return 'eicon-logo ui-e-widget';
@@ -32,18 +34,19 @@
32 34 return ['uicore'];
33 35 }
34 36 public function get_keywords()
35 37 {
36 - return [ 'logo', 'grid', 'client', 'brand', 'showcase' ];
38 + return ['logo', 'grid', 'client', 'brand', 'showcase'];
37 39 }
38 40 public function get_styles()
39 41 {
40 42 $styles = [
41 43 'logo-grid',
44 + 'grid',
42 45 'animation', // hover animations
43 46 'entrance', // entrance basic style
44 47 ];
45 - if(!class_exists('\UiCore\Core') && !class_exists('\UiCoreAnimate\Base')){
48 + if (!class_exists('\UiCore\Core') && !class_exists('\UiCoreAnimate\Base')) {
46 49 $styles['e-animations'] = [ // entrance animations
47 50 'external' => true,
48 51 ];
49 52 }
@@ -59,8 +62,13 @@
59 62 ],
60 63 ]
61 64 ];
62 65 }
66 + public function has_widget_inner_wrapper(): bool
67 + {
68 + // TODO: remove after Optmized Markup experiment is merged to the core
69 + return ! \Elementor\Plugin::$instance->experiments->is_feature_active('e_optimized_markup');
70 + }
63 71 protected function register_controls()
64 72 {
65 73
66 74 $this->TRAIT_register_logo_repeater_controls('Logos'); // Repeater Controls
@@ -67,31 +75,31 @@
67 75
68 76 $this->start_controls_section(
69 77 'section_grid_settings',
70 78 [
71 - 'label' => __( 'Grid Settings', 'uicore-elements' ),
79 + 'label' => __('Grid Settings', 'uicore-elements'),
72 80 'tab' => Controls_Manager::TAB_CONTENT,
73 81 ]
74 82 );
75 83
76 - $this->add_control(
77 - 'layout',
78 - [
79 - 'label' => __( 'Grid Layout', 'uicore-elements' ),
80 - 'type' => Controls_Manager::SELECT,
81 - 'options' => [
82 - 'inner-border' => __( 'Inner Border', 'uicore-elements' ),
83 - 'outer-border' => __( 'Outer Border', 'uicore-elements' ),
84 - 'divider' => __( 'Inner Divider', 'uicore-elements' ),
85 - ],
86 - 'default' => 'inner-border',
87 - 'frontend_available' => true,
88 - 'style_transfer' => true, // enables the param to be copied/pasted even without selector => []
89 - 'render_type' => 'template',
90 - ]
91 - );
84 + $this->add_control(
85 + 'layout',
86 + [
87 + 'label' => __('Grid Layout', 'uicore-elements'),
88 + 'type' => Controls_Manager::SELECT,
89 + 'options' => [
90 + 'inner-border' => __('Inner Border', 'uicore-elements'),
91 + 'outer-border' => __('Outer Border', 'uicore-elements'),
92 + 'divider' => __('Inner Divider', 'uicore-elements'),
93 + ],
94 + 'default' => 'inner-border',
95 + 'frontend_available' => true,
96 + 'style_transfer' => true, // enables the param to be copied/pasted even without selector => []
97 + 'render_type' => 'template',
98 + ]
99 + );
92 100
93 - $this->TRAIT_register_grid_layout_controls();
101 + $this->TRAIT_register_grid_layout_controls();
94 102
95 103 $this->end_controls_section();
96 104
97 105 $this->start_controls_section(
@@ -96,14 +104,14 @@
96 104
97 105 $this->start_controls_section(
98 106 'section_logo_settings',
99 107 [
100 - 'label' => __( 'Logo Settings', 'uicore-elements' ),
108 + 'label' => __('Logo Settings', 'uicore-elements'),
101 109 'tab' => Controls_Manager::TAB_CONTENT,
102 110 ]
103 111 );
104 112
105 - $this->TRAIT_register_logo_adittional_controls();
113 + $this->TRAIT_register_logo_adittional_controls();
106 114
107 115 $this->end_controls_section();
108 116
109 117 $this->start_controls_section(
@@ -108,14 +116,14 @@
108 116
109 117 $this->start_controls_section(
110 118 'section_logo_grid',
111 119 [
112 - 'label' => __( 'Logo Grid', 'uicore-elements' ),
120 + 'label' => __('Logo Grid', 'uicore-elements'),
113 121 'tab' => Controls_Manager::TAB_STYLE,
114 122 ]
115 123 );
116 124
117 - $this->TRAIT_register_logos_grid_style_controls();
125 + $this->TRAIT_register_logos_grid_style_controls();
118 126
119 127 $this->end_controls_section();
120 128
121 129 $this->start_controls_section(
@@ -120,29 +128,30 @@
120 128
121 129 $this->start_controls_section(
122 130 'animation_style_grid',
123 131 [
124 - 'label' => __( 'Animations', 'uicore-elements' ),
132 + 'label' => __('Animations', 'uicore-elements'),
125 133 'tab' => Controls_Manager::TAB_STYLE,
126 134 ]
127 135 );
128 136
129 - $this->TRAIT_register_entrance_animations_controls();
130 - $this->TRAIT_register_hover_animation_control(
131 - 'Item Hover Animation',
132 - [],
133 - ['underline']
134 - );
135 - $this->TRAIT_register_hover_animation_control(
136 - 'Logo Hover Animation',
137 - [],
138 - ['underline']
139 - );
137 + $this->TRAIT_register_entrance_animations_controls();
138 + $this->TRAIT_register_hover_animation_control(
139 + 'Item Hover Animation',
140 + [],
141 + ['underline']
142 + );
143 + $this->TRAIT_register_hover_animation_control(
144 + 'Logo Hover Animation',
145 + [],
146 + ['underline']
147 + );
140 148
141 149 $this->end_controls_section();
142 150
143 151 // Updates and removes grid component controls
144 152 $this->update_control('columns', [
153 + 'default' => 4,
145 154 'desktop_default' => 4,
146 155 'tablet_default' => 2,
147 156 'mobile_default' => 2,
148 157 'render_type' => 'template',
@@ -160,16 +169,16 @@
160 169 }
161 170 protected function render()
162 171 {
163 172
164 - if(empty( $this->get_settings_for_display('logo_list'))) {
173 + if (empty($this->get_settings_for_display('logo_list'))) {
165 174 return;
166 175 }
167 176
168 - ?>
169 - <div class='ui-e-grid'>
170 - <?php $this->TRAIT_render_logo_item(); ?>
171 - </div>
172 - <?php
177 +?>
178 + <div class='ui-e-grid'>
179 + <?php $this->TRAIT_render_logo_item(); ?>
180 + </div>
181 +<?php
173 182 }
174 183 }
175 -\Elementor\Plugin::instance()->widgets_manager->register(new Logo_Grid());
184 +\Elementor\Plugin::instance()->widgets_manager->register(new Logo_Grid());