PluginProbe
UiCore Elements – Free widgets and templates for Elementor / 1.3.17
UiCore Elements – Free widgets and templates for Elementor v1.3.17
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 1.2.4 All 41 releases
← All changes | includes/widgets/logo-grid.php +52 -45 1.0.161.3.17 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,9 +34,9 @@
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 = [
@@ -42,9 +44,9 @@
42 44 'grid',
43 45 'animation', // hover animations
44 46 'entrance', // entrance basic style
45 47 ];
46 - if(!class_exists('\UiCore\Core') && !class_exists('\UiCoreAnimate\Base')){
48 + if (!class_exists('\UiCore\Core') && !class_exists('\UiCoreAnimate\Base')) {
47 49 $styles['e-animations'] = [ // entrance animations
48 50 'external' => true,
49 51 ];
50 52 }
@@ -60,8 +62,13 @@
60 62 ],
61 63 ]
62 64 ];
63 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 + }
64 71 protected function register_controls()
65 72 {
66 73
67 74 $this->TRAIT_register_logo_repeater_controls('Logos'); // Repeater Controls
@@ -68,31 +75,31 @@
68 75
69 76 $this->start_controls_section(
70 77 'section_grid_settings',
71 78 [
72 - 'label' => __( 'Grid Settings', 'uicore-elements' ),
79 + 'label' => __('Grid Settings', 'uicore-elements'),
73 80 'tab' => Controls_Manager::TAB_CONTENT,
74 81 ]
75 82 );
76 83
77 - $this->add_control(
78 - 'layout',
79 - [
80 - 'label' => __( 'Grid Layout', 'uicore-elements' ),
81 - 'type' => Controls_Manager::SELECT,
82 - 'options' => [
83 - 'inner-border' => __( 'Inner Border', 'uicore-elements' ),
84 - 'outer-border' => __( 'Outer Border', 'uicore-elements' ),
85 - 'divider' => __( 'Inner Divider', 'uicore-elements' ),
86 - ],
87 - 'default' => 'inner-border',
88 - 'frontend_available' => true,
89 - 'style_transfer' => true, // enables the param to be copied/pasted even without selector => []
90 - 'render_type' => 'template',
91 - ]
92 - );
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 + );
93 100
94 - $this->TRAIT_register_grid_layout_controls();
101 + $this->TRAIT_register_grid_layout_controls();
95 102
96 103 $this->end_controls_section();
97 104
98 105 $this->start_controls_section(
@@ -97,14 +104,14 @@
97 104
98 105 $this->start_controls_section(
99 106 'section_logo_settings',
100 107 [
101 - 'label' => __( 'Logo Settings', 'uicore-elements' ),
108 + 'label' => __('Logo Settings', 'uicore-elements'),
102 109 'tab' => Controls_Manager::TAB_CONTENT,
103 110 ]
104 111 );
105 112
106 - $this->TRAIT_register_logo_adittional_controls();
113 + $this->TRAIT_register_logo_adittional_controls();
107 114
108 115 $this->end_controls_section();
109 116
110 117 $this->start_controls_section(
@@ -109,14 +116,14 @@
109 116
110 117 $this->start_controls_section(
111 118 'section_logo_grid',
112 119 [
113 - 'label' => __( 'Logo Grid', 'uicore-elements' ),
120 + 'label' => __('Logo Grid', 'uicore-elements'),
114 121 'tab' => Controls_Manager::TAB_STYLE,
115 122 ]
116 123 );
117 124
118 - $this->TRAIT_register_logos_grid_style_controls();
125 + $this->TRAIT_register_logos_grid_style_controls();
119 126
120 127 $this->end_controls_section();
121 128
122 129 $this->start_controls_section(
@@ -121,24 +128,24 @@
121 128
122 129 $this->start_controls_section(
123 130 'animation_style_grid',
124 131 [
125 - 'label' => __( 'Animations', 'uicore-elements' ),
132 + 'label' => __('Animations', 'uicore-elements'),
126 133 'tab' => Controls_Manager::TAB_STYLE,
127 134 ]
128 135 );
129 136
130 - $this->TRAIT_register_entrance_animations_controls();
131 - $this->TRAIT_register_hover_animation_control(
132 - 'Item Hover Animation',
133 - [],
134 - ['underline']
135 - );
136 - $this->TRAIT_register_hover_animation_control(
137 - 'Logo Hover Animation',
138 - [],
139 - ['underline']
140 - );
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 + );
141 148
142 149 $this->end_controls_section();
143 150
144 151 // Updates and removes grid component controls
@@ -162,16 +169,16 @@
162 169 }
163 170 protected function render()
164 171 {
165 172
166 - if(empty( $this->get_settings_for_display('logo_list'))) {
173 + if (empty($this->get_settings_for_display('logo_list'))) {
167 174 return;
168 175 }
169 176
170 - ?>
171 - <div class='ui-e-grid'>
172 - <?php $this->TRAIT_render_logo_item(); ?>
173 - </div>
174 - <?php
177 +?>
178 + <div class='ui-e-grid'>
179 + <?php $this->TRAIT_render_logo_item(); ?>
180 + </div>
181 +<?php
175 182 }
176 183 }
177 -\Elementor\Plugin::instance()->widgets_manager->register(new Logo_Grid());
184 +\Elementor\Plugin::instance()->widgets_manager->register(new Logo_Grid());