TemplatesNext ToolKit - Version 3.1.9

Version Description

  • Added: Elementor Slider Widget Typography
  • Added: Elementor Testimonials Widget Typography
Download this release

Release Info

Developer marsian
Plugin Icon 128x128 TemplatesNext ToolKit
Version 3.1.9
Comparing to
See all releases

Code changes from version 3.1.8 to 3.1.9

inc/el-widgets/assets/css/no-image.png ADDED
Binary file
inc/el-widgets/assets/css/txel-addons.css CHANGED
@@ -144,3 +144,221 @@
144
  text-align: right;
145
  }
146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
144
  text-align: right;
145
  }
146
 
147
+ .tx-slider .tx-slide-button a {
148
+ display: inline-block;
149
+ }
150
+ .tx-slider .tx-slide-button a.button-xs {
151
+ font-size: 13px;
152
+ padding: 4px 16px;
153
+ -webkit-border-radius: 2px;
154
+ border-radius: 2px;
155
+ }
156
+
157
+ .tx-slider .tx-slide-button a.button-sm {
158
+ font-size: 15px;
159
+ padding: 8px 20px;
160
+ -webkit-border-radius: 3px;
161
+ border-radius: 3px;
162
+ }
163
+
164
+ .tx-slider .tx-slide-button a.button-md {
165
+ font-size: 16px;
166
+ padding: 12px 24px;
167
+ -webkit-border-radius: 4px;
168
+ border-radius: 4px;
169
+ }
170
+
171
+ .tx-slider .tx-slide-button a.button-lg {
172
+ font-size: 18px;
173
+ padding: 14px 32px;
174
+ -webkit-border-radius: 5px;
175
+ border-radius: 5px;
176
+ }
177
+
178
+ .tx-slider .tx-slide-button a.button-xl {
179
+ font-size: 20px;
180
+ padding: 18px 40px;
181
+ -webkit-border-radius: 6px;
182
+ border-radius: 6px;
183
+ }
184
+
185
+ .tx-folio-filtering {
186
+ display: block;
187
+ clear: both;
188
+ margin-bottom: 16px;
189
+ }
190
+
191
+ .tx-folio-filtering input[type="button"] {
192
+ background: transparent;
193
+ background-color: #FFF;
194
+ color: #373737;
195
+ border: 1px solid rgba(0,0,0,0.12);
196
+ margin: 2px;
197
+ }
198
+
199
+ .tx-folio-filtering input[type="button"]:first-child {
200
+ margin-left: 0px;
201
+ }
202
+ .tx-folio-filtering input[type="button"]:last-child {
203
+ margin-right: 0px;
204
+ }
205
+
206
+ .tx-folio-filtering input.is-checked,
207
+ .tx-folio-filtering input:hover {
208
+ background-color: #646464;
209
+ color: #FFFFFF;
210
+ }
211
+
212
+ .tx-folio-filtering span.tag-divider {
213
+ display: none;
214
+ }
215
+
216
+ .tx-el-foliowrap {
217
+ display: block;
218
+ width: 100%;
219
+ max-width: 100%;
220
+ overflow: hidden;
221
+ }
222
+
223
+ .tx-blog-item .blog-image {
224
+ width: 100%;
225
+ transition-property: all;
226
+ transition-duration: 0.4s;
227
+ transition-timing-function: ease-in-out;
228
+ transition-delay: 0.0s;
229
+ }
230
+
231
+ .tx-blog-item .blog-image:hover {
232
+ transform:scale(1.04);
233
+ }
234
+
235
+ .tx-blog-item .tx-blog-img::after {
236
+ position: absolute;
237
+ left: 0px;
238
+ top: 0px;
239
+ height: 100%;
240
+ width: 100%;
241
+ content: " ";
242
+ z-index: 103;
243
+ transition-property: all;
244
+ transition-duration: 0.4s;
245
+ transition-timing-function: ease-in-out;
246
+ transition-delay: 0.0s;
247
+ -webkit-box-shadow: inset 0px 0px 126px 2px rgba(0,0,0,0.0);
248
+ -moz-box-shadow: inset 0px 0px 126px 2px rgba(0,0,0,0.0);
249
+ box-shadow: inset 0px 0px 126px 2px rgba(0,0,0,0.0);
250
+
251
+ }
252
+
253
+ .tx-blog-item:hover .tx-blog-img::after {
254
+ -webkit-box-shadow: inset 0px 0px 72px 2px rgba(0,0,0,0.32);
255
+ -moz-box-shadow: inset 0px 0px 72px 2px rgba(0,0,0,0.32);
256
+ box-shadow: inset 0px 0px 72px 2px rgba(0,0,0,0.32);
257
+ }
258
+
259
+ .tx-blog-item .tx-blog-img .txpost-links {
260
+ position: absolute;
261
+ left: 0px;
262
+ top: 0px;
263
+ height: 100%;
264
+ width: 100%;
265
+ z-index: 105;
266
+ }
267
+
268
+ .tx-blog-item .tx-blog-img .txpost-links span {
269
+ display: block;
270
+ position: absolute;
271
+ top: 50%;
272
+ top: calc( 50% - 16px );
273
+ left: 0px;
274
+ width: 100%;
275
+ height: 32px;
276
+ text-align: center;
277
+ }
278
+
279
+ .tx-blog-item .tx-blog-img .txpost-links span .txpoxt-linkico,
280
+ .tx-blog-item .tx-blog-img .txpost-links span .txpoxt-zoomico {
281
+ display: inline-block;
282
+ margin: 1px;
283
+ height: 32px;
284
+ width: 32px;
285
+ line-height: 32px;
286
+ color: #FFF;
287
+ text-decoration: none;
288
+ text-align: center;
289
+ border-radius: 3px;
290
+ position: relative;
291
+
292
+ transition-property: all;
293
+ transition-duration: 0.4s;
294
+ transition-timing-function: ease-in-out;
295
+ transition-delay: 0.0s;
296
+
297
+ }
298
+
299
+
300
+ .tx-blog-item .tx-blog-img .txpost-links span .txpoxt-linkico {
301
+ margin-right: 48px;
302
+ margin-left: auto;
303
+ opacity: 0;
304
+ }
305
+ .tx-blog-item .tx-blog-img .txpost-links span .txpoxt-zoomico {
306
+ margin-left: 48px;
307
+ margin-right: auto;
308
+ opacity: 0;
309
+ }
310
+ .tx-blog-item .tx-blog-img:hover .txpost-links span .txpoxt-linkico {
311
+ margin-left: 1px;
312
+ margin-right: 1px;
313
+ opacity: 1;
314
+ }
315
+ .tx-blog-item .tx-blog-img:hover .txpost-links span .txpoxt-zoomico {
316
+ margin-right: 1px;
317
+ margin-left: 1px;
318
+ opacity: 1;
319
+ }
320
+
321
+ .tx-el-blog .tx-meta {
322
+ position: relative;
323
+ }
324
+ .tx-post-comm {
325
+ display: block;
326
+ position: absolute;
327
+ right: 0px;
328
+ top: 6px;
329
+ height: 24px;
330
+ width: 24px;
331
+ text-align: center;
332
+ line-height: 24px;
333
+ color: #FFFFFF;
334
+ padding-left: 4px;
335
+ margin-left: 12px;
336
+ }
337
+
338
+ .tx-post-comm span {
339
+ display: block;
340
+ position: relative;
341
+ height: 24px;
342
+ width: 24px;
343
+ text-align: center;
344
+ z-index: 107;
345
+ }
346
+
347
+ .tx-post-comm:after {
348
+ content: '\f075';
349
+ font-family: FontAwesome;
350
+ font-weight: normal;
351
+ font-style: normal;
352
+ margin:0px;
353
+ text-decoration:none;
354
+ height: 24px;
355
+ line-height: 24px;
356
+ font-size: 24px;
357
+ position: absolute;
358
+ left: 0px;
359
+ top: 0px;
360
+ color: #CCC!important;
361
+ z-index: 106;
362
+ width: 32px;
363
+ text-align: center;
364
+ }
inc/el-widgets/widgets/portfolios.php CHANGED
@@ -256,6 +256,8 @@ class tx_portfolio extends Widget_Base {
256
 
257
 
258
  $return_string = '';
 
 
259
 
260
  if( $tx_carousel == 'no' ) {
261
  $return_string .= '<div class="tx-portfolio tx-post-row tx-masonry '.$style_class.'">';
@@ -336,6 +338,8 @@ class tx_portfolio extends Widget_Base {
336
  $return_string .= '<div class="nx-paging"><div class="nx-paging-inner">'.paginate_links( $args ).'</div></div>';
337
  }
338
 
 
 
339
  wp_reset_query();
340
 
341
  echo $return_string;
256
 
257
 
258
  $return_string = '';
259
+
260
+ $return_string .= '<div class="tx-el-foliowrap">';
261
 
262
  if( $tx_carousel == 'no' ) {
263
  $return_string .= '<div class="tx-portfolio tx-post-row tx-masonry '.$style_class.'">';
338
  $return_string .= '<div class="nx-paging"><div class="nx-paging-inner">'.paginate_links( $args ).'</div></div>';
339
  }
340
 
341
+ $return_string .= '</div>';
342
+
343
  wp_reset_query();
344
 
345
  echo $return_string;
inc/el-widgets/widgets/slider.php CHANGED
@@ -4,7 +4,9 @@ namespace TXElementorAddons\Widgets;
4
  use Elementor\Widget_Base;
5
  use Elementor\Controls_Manager;
6
  use Elementor\Group_Control_Background;
7
-
 
 
8
 
9
  if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
10
 
@@ -315,6 +317,95 @@ class tx_slider extends Widget_Base {
315
  );
316
 
317
  $this->end_controls_section();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
318
  }
319
 
320
  /**
@@ -341,6 +432,7 @@ class tx_slider extends Widget_Base {
341
  $fullscreen = $settings['fullscreen'];
342
  $textbg = $settings['textbg'];
343
  $parallax = $settings['parallax'];
 
344
 
345
  $return_string = '';
346
  $cat_slug = '';
@@ -427,8 +519,8 @@ class tx_slider extends Widget_Base {
427
  if ( $tx_desc == 'yes' ) {
428
  $return_string .= '<div class="tx-slide-details"><p>'.tx_custom_excerpt(32).'</p></div>';
429
  }
430
- if ( $tx_link == 'yes' ) {
431
- $return_string .= '<div class="tx-slide-button"><a href="'.esc_url( $show_link_url ).'">'.esc_attr( $slide_link_text ).'</a></div>';
432
  }
433
  $return_string .= '</div></div></div></div>';
434
 
4
  use Elementor\Widget_Base;
5
  use Elementor\Controls_Manager;
6
  use Elementor\Group_Control_Background;
7
+ use Elementor\Scheme_Color;
8
+ use Elementor\Group_Control_Typography;
9
+ use Elementor\Scheme_Typography;
10
 
11
  if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
12
 
317
  );
318
 
319
  $this->end_controls_section();
320
+
321
+ $this->start_controls_section(
322
+ 'style_section',
323
+ [
324
+ 'label' => __( 'Title', 'tx' ),
325
+ 'tab' => \Elementor\Controls_Manager::TAB_STYLE,
326
+ ]
327
+ );
328
+
329
+ $this->add_control(
330
+ 'title_color',
331
+ [
332
+ 'label' => __( 'Title Color', 'tx' ),
333
+ 'type' => \Elementor\Controls_Manager::COLOR,
334
+ 'selectors' => [
335
+ '{{WRAPPER}} .tx-slider-box .tx-slide-content .tx-slide-title' => 'color: {{VALUE}}',
336
+ ],
337
+ ]
338
+ );
339
+
340
+ $this->add_group_control(
341
+ Group_Control_Typography::get_type(),
342
+ [
343
+ 'name' => 'title_typography',
344
+ 'label' => __( 'Title Typography', 'tx' ),
345
+ 'scheme' => Scheme_Typography::TYPOGRAPHY_1,
346
+ 'selector' => '{{WRAPPER}} .tx-slider-box .tx-slide-content .tx-slide-title',
347
+ ]
348
+ );
349
+
350
+ $this->end_controls_section();
351
+
352
+ $this->start_controls_section(
353
+ 'style_section_2',
354
+ [
355
+ 'label' => __( 'Content', 'tx' ),
356
+ 'tab' => \Elementor\Controls_Manager::TAB_STYLE,
357
+ ]
358
+ );
359
+
360
+ $this->add_control(
361
+ 'content_color',
362
+ [
363
+ 'label' => __( 'Content Color', 'tx' ),
364
+ 'type' => \Elementor\Controls_Manager::COLOR,
365
+ 'selectors' => [
366
+ '{{WRAPPER}} .tx-slider .tx-slider-box .tx-slide-content .tx-slide-details p' => 'color: {{VALUE}}',
367
+ ],
368
+ ]
369
+ );
370
+
371
+ $this->add_group_control(
372
+ Group_Control_Typography::get_type(),
373
+ [
374
+ 'name' => 'desc_typography',
375
+ 'label' => __( 'Content Typography', 'tx' ),
376
+ 'scheme' => Scheme_Typography::TYPOGRAPHY_1,
377
+ 'selector' => '{{WRAPPER}} .tx-slider .tx-slider-box .tx-slide-content .tx-slide-details p',
378
+ ]
379
+ );
380
+
381
+ $this->end_controls_section();
382
+
383
+ $this->start_controls_section(
384
+ 'style_section_3',
385
+ [
386
+ 'label' => __( 'Button', 'tx' ),
387
+ 'tab' => \Elementor\Controls_Manager::TAB_STYLE,
388
+ ]
389
+ );
390
+ $this->add_control(
391
+ 'button_size',
392
+ [
393
+ 'label' => __( 'Button Size', 'tx' ),
394
+ 'type' => \Elementor\Controls_Manager::SELECT,
395
+ 'options' => [
396
+ 'xs' => __( 'Extra Small', 'tx' ),
397
+ 'sm' => __( 'Small', 'tx' ),
398
+ 'md' => __( 'Medium', 'tx' ),
399
+ 'lg' => __( 'large', 'tx' ),
400
+ 'xl' => __( 'Extra Large', 'tx' ),
401
+ ],
402
+ 'default' => 'md',
403
+ 'dynamic' => [
404
+ 'active' => true,
405
+ ],
406
+ ]
407
+ );
408
+ $this->end_controls_section();
409
  }
410
 
411
  /**
432
  $fullscreen = $settings['fullscreen'];
433
  $textbg = $settings['textbg'];
434
  $parallax = $settings['parallax'];
435
+ $button_size = $settings['button_size'];
436
 
437
  $return_string = '';
438
  $cat_slug = '';
519
  if ( $tx_desc == 'yes' ) {
520
  $return_string .= '<div class="tx-slide-details"><p>'.tx_custom_excerpt(32).'</p></div>';
521
  }
522
+ if ( $tx_link == 'yes' && !empty($slide_link_text) ) {
523
+ $return_string .= '<div class="tx-slide-button"><a class="themebgcolor button-'.$button_size.'" href="'.esc_url( $show_link_url ).'">'.esc_attr( $slide_link_text ).'</a></div>';
524
  }
525
  $return_string .= '</div></div></div></div>';
526
 
inc/el-widgets/widgets/testimonials.php CHANGED
@@ -3,6 +3,10 @@ namespace TXElementorAddons\Widgets;
3
 
4
  use Elementor\Widget_Base;
5
  use Elementor\Controls_Manager;
 
 
 
 
6
 
7
 
8
  if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
@@ -158,6 +162,37 @@ class tx_testimonials extends Widget_Base {
158
  );
159
 
160
  $this->end_controls_section();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
  }
162
 
163
  /**
@@ -209,11 +244,12 @@ class tx_testimonials extends Widget_Base {
209
  $testi_organ = esc_attr(rwmb_meta('tx_testi_company'));
210
 
211
  $full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full' );
212
- $image_url = aq_resize( $full_image_url[0], $width, $height, true, false, true );
213
-
214
- if ( empty($image_url['0']) ) {
 
215
  $image_url['0'] = plugin_dir_url( __FILE__ ) . 'no-image.png';
216
- }
217
 
218
  $return_string .= '<div class="tx-testi2-item">';
219
  $return_string .= '<span class="tx-testi2-text" style="text-align: '.$align.'">'.get_the_content().'</span>';
3
 
4
  use Elementor\Widget_Base;
5
  use Elementor\Controls_Manager;
6
+ use Elementor\Scheme_Color;
7
+ use Elementor\Group_Control_Typography;
8
+ use Elementor\Scheme_Typography;
9
+
10
 
11
 
12
  if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
162
  );
163
 
164
  $this->end_controls_section();
165
+
166
+ $this->start_controls_section(
167
+ 'style_section',
168
+ [
169
+ 'label' => __( 'Testimonial Typography', 'tx' ),
170
+ 'tab' => \Elementor\Controls_Manager::TAB_STYLE,
171
+ ]
172
+ );
173
+
174
+ $this->add_control(
175
+ 'text_color',
176
+ [
177
+ 'label' => __( 'Text Color', 'tx' ),
178
+ 'type' => \Elementor\Controls_Manager::COLOR,
179
+ 'selectors' => [
180
+ '{{WRAPPER}} .tx-testiin2 .tx-testi2-item span.tx-testi2-text' => 'color: {{VALUE}}',
181
+ ],
182
+ ]
183
+ );
184
+
185
+ $this->add_group_control(
186
+ Group_Control_Typography::get_type(),
187
+ [
188
+ 'name' => 'text_typography',
189
+ 'label' => __( 'Text Typography', 'tx' ),
190
+ 'scheme' => Scheme_Typography::TYPOGRAPHY_1,
191
+ 'selector' => '{{WRAPPER}} .tx-testiin2 .tx-testi2-item span.tx-testi2-text',
192
+ ]
193
+ );
194
+
195
+ $this->end_controls_section();
196
  }
197
 
198
  /**
244
  $testi_organ = esc_attr(rwmb_meta('tx_testi_company'));
245
 
246
  $full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full' );
247
+
248
+ if ( !empty($full_image_url[0]) ) {
249
+ $image_url = aq_resize( $full_image_url[0], $width, $height, true, false, true );
250
+ } else {
251
  $image_url['0'] = plugin_dir_url( __FILE__ ) . 'no-image.png';
252
+ }
253
 
254
  $return_string .= '<div class="tx-testi2-item">';
255
  $return_string .= '<span class="tx-testi2-text" style="text-align: '.$align.'">'.get_the_content().'</span>';
inc/el-widgets/widgets/txposts.php CHANGED
@@ -161,6 +161,52 @@ class tx_posts extends Widget_Base {
161
  ]
162
  );
163
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
164
  $this->end_controls_section();
165
  }
166
 
@@ -176,13 +222,16 @@ class tx_posts extends Widget_Base {
176
  protected function render() {
177
  $settings = $this->get_settings_for_display();
178
 
179
- //echo '[tx_portfolio style="' . $settings['style'] . '" items="' . $settings['items'] . '" columns="' . $settings['columns'] . '" hide_cat="' . $settings['hide_cat'] . '" hide_excerpt="' . $settings['hide_excerpt'] . '" show_pagination="' . $settings['show_pagination'] . '" carousel="' . $settings['carousel'] . '"]';
180
- //echo do_shortcode('[tx_portfolio style="' . $settings['style'] . '" items="' . $settings['items'] . '" columns="' . $settings['columns'] . '" hide_cat="' . $settings['hide_cat'] . '" hide_excerpt="' . $settings['hide_excerpt'] . '" show_pagination="' . $settings['show_pagination'] . '" carousel="' . $settings['carousel'] . '"]');
181
 
182
  $items = $settings['items'];
183
  $columns = $settings['columns'];
184
  $showcat = $settings['showcat'];
185
  $show_pagination = $settings['show_pagination'];
 
 
 
 
 
186
  $category_id = '';
187
 
188
  $blog_term = '';
@@ -208,7 +257,7 @@ class tx_posts extends Widget_Base {
208
 
209
  $return_string = '';
210
 
211
- $return_string .= '<div class="tx-blog tx-post-row tx-masonry">';
212
 
213
  wp_reset_query();
214
  global $post;
@@ -245,13 +294,24 @@ class tx_posts extends Widget_Base {
245
 
246
  $return_string .= '<div class="tx-blog-item tx-post-col-'.$total_column.'"><div class="tx-border-box">';
247
 
248
- if ( has_post_thumbnail() ) {
249
- $return_string .= '<div class="tx-blog-img"><a href="'.esc_url($full_image_url[0]).'" class="">';
250
- $return_string .= '<img src="'.esc_url($thumb_image_url).'" alt="" class="blog-image" /></a><span class="tx-post-comm"><span>'.$post_comments.'</span></span></div>';
251
- } else
252
- {
 
 
 
 
 
 
 
 
 
253
  $return_string .= '<div class="tx-blog-imgpad"></div>';
254
- }
 
 
255
 
256
  $return_string .= '<div class="tx-post-content"><h3 class="tx-post-title"><a href="'.get_permalink().'">'.get_the_title().'</a></h3>';
257
 
@@ -262,12 +322,25 @@ class tx_posts extends Widget_Base {
262
  }
263
 
264
  $return_string .= '<div class="tx-blog-content">'.get_the_excerpt().'</div>';
265
-
 
266
  $return_string .= '<div class="tx-meta">';
267
- $return_string .= '<span class="tx-author">By : <a href="'.esc_url( get_author_posts_url( get_the_author_meta("ID") ) ).'">'.get_the_author().'</a></span>';
268
  $return_string .= '<span class="tx-date"> | '.get_the_date('M j, Y').'</span>';
269
  $return_string .= '</div>';
 
270
 
 
 
 
 
 
 
 
 
 
 
 
271
 
272
  $return_string .= '</div></div></div>';
273
 
161
  ]
162
  );
163
 
164
+ $this->add_control(
165
+ 'show_author',
166
+ [
167
+ 'label' => __( 'Show Author', 'tx' ),
168
+ 'type' => \Elementor\Controls_Manager::SWITCHER,
169
+ 'label_on' => __( 'Show', 'tx' ),
170
+ 'label_off' => __( 'Hide', 'tx' ),
171
+ 'return_value' => 'yes',
172
+ 'default' => 'yes',
173
+ 'dynamic' => [
174
+ 'active' => true,
175
+ ],
176
+
177
+ ]
178
+ );
179
+ $this->add_control(
180
+ 'show_date',
181
+ [
182
+ 'label' => __( 'Show Date Published', 'tx' ),
183
+ 'type' => \Elementor\Controls_Manager::SWITCHER,
184
+ 'label_on' => __( 'Show', 'tx' ),
185
+ 'label_off' => __( 'Hide', 'tx' ),
186
+ 'return_value' => 'yes',
187
+ 'default' => 'yes',
188
+ 'dynamic' => [
189
+ 'active' => true,
190
+ ],
191
+
192
+ ]
193
+ );
194
+ $this->add_control(
195
+ 'show_comm',
196
+ [
197
+ 'label' => __( 'Show number of Comment Published', 'tx' ),
198
+ 'type' => \Elementor\Controls_Manager::SWITCHER,
199
+ 'label_on' => __( 'Show', 'tx' ),
200
+ 'label_off' => __( 'Hide', 'tx' ),
201
+ 'return_value' => 'yes',
202
+ 'default' => '',
203
+ 'dynamic' => [
204
+ 'active' => true,
205
+ ],
206
+
207
+ ]
208
+ );
209
+
210
  $this->end_controls_section();
211
  }
212
 
222
  protected function render() {
223
  $settings = $this->get_settings_for_display();
224
 
 
 
225
 
226
  $items = $settings['items'];
227
  $columns = $settings['columns'];
228
  $showcat = $settings['showcat'];
229
  $show_pagination = $settings['show_pagination'];
230
+
231
+ $show_author = $settings['show_author'];
232
+ $show_date = $settings['show_date'];
233
+ $show_comm = $settings['show_comm'];
234
+
235
  $category_id = '';
236
 
237
  $blog_term = '';
257
 
258
  $return_string = '';
259
 
260
+ $return_string .= '<div class="tx-el-blog tx-blog tx-post-row tx-masonry">';
261
 
262
  wp_reset_query();
263
  global $post;
294
 
295
  $return_string .= '<div class="tx-blog-item tx-post-col-'.$total_column.'"><div class="tx-border-box">';
296
 
297
+ if ( has_post_thumbnail() ) {
298
+
299
+ $return_string .= '<div class="tx-blog-img">';
300
+
301
+ $return_string .= '<div class="txpost-links"><span>';
302
+ $return_string .= '<a href="'.esc_url(get_permalink()).'" class="txpoxt-linkico themebgcolor"><i class="fa fa-link"></i></a>';
303
+ $return_string .= '<a href="'.esc_url($full_image_url[0]).'" class="txpoxt-zoomico themebgcolor"><i class="fa fa-search-plus"></i></a>';
304
+ $return_string .= '</span></div>';
305
+
306
+ $return_string .= '<img src="'.esc_url($thumb_image_url).'" alt="" class="blog-image" />';
307
+
308
+ $return_string .= '</div>';
309
+
310
+ } else {
311
  $return_string .= '<div class="tx-blog-imgpad"></div>';
312
+ }
313
+
314
+
315
 
316
  $return_string .= '<div class="tx-post-content"><h3 class="tx-post-title"><a href="'.get_permalink().'">'.get_the_title().'</a></h3>';
317
 
322
  }
323
 
324
  $return_string .= '<div class="tx-blog-content">'.get_the_excerpt().'</div>';
325
+
326
+ /*
327
  $return_string .= '<div class="tx-meta">';
328
+ $return_string .= '<span class="tx-author"><a href="'.esc_url( get_author_posts_url( get_the_author_meta("ID") ) ).'">'.get_the_author().'</a></span>';
329
  $return_string .= '<span class="tx-date"> | '.get_the_date('M j, Y').'</span>';
330
  $return_string .= '</div>';
331
+ */
332
 
333
+ $return_string .= '<div class="tx-meta">';
334
+ if ( $show_author == "yes" ) {
335
+ $return_string .= '<span class="tx-author"><a href="'.esc_url( get_author_posts_url( get_the_author_meta("ID") ) ).'">'.get_the_author().'</a></span>';
336
+ }
337
+ if ( $show_date == "yes" ) {
338
+ $return_string .= '<span class="tx-date"> | '.get_the_date('M j, Y').'</span>';
339
+ }
340
+ if ( $show_comm == "yes" ) {
341
+ $return_string .= '<span class="tx-post-comm"><span>'.$post_comments.'</span></span>';
342
+ }
343
+ $return_string .= '</div>';
344
 
345
  $return_string .= '</div></div></div>';
346
 
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: marsian
3
  Tags: shortcode, shortcodes, columns, column, section, sections, portfolio, testimonial, border, borders, button, buttons, masonry, posts, post_type, font awesome, icons, fontawesome
4
  Requires at least: 3.6
5
  Tested up to: 5.2
6
- Stable tag: 3.1.8
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -41,6 +41,10 @@ Install the plugin into the `/wp-content/plugins/` folder, and activate it.
41
 
42
 
43
  == Changelog ==
 
 
 
 
44
  = 3.1.7 =
45
  * Added: Elementor Testimonial Widget
46
  * Fix: Missing Grabbing png
3
  Tags: shortcode, shortcodes, columns, column, section, sections, portfolio, testimonial, border, borders, button, buttons, masonry, posts, post_type, font awesome, icons, fontawesome
4
  Requires at least: 3.6
5
  Tested up to: 5.2
6
+ Stable tag: 3.1.9
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
41
 
42
 
43
  == Changelog ==
44
+ = 3.1.9 =
45
+ * Added: Elementor Slider Widget Typography
46
+ * Added: Elementor Testimonials Widget Typography
47
+
48
  = 3.1.7 =
49
  * Added: Elementor Testimonial Widget
50
  * Fix: Missing Grabbing png
tx-toolkit.php CHANGED
@@ -3,7 +3,7 @@
3
  /*
4
  Plugin Name: TemplatesNext ToolKit
5
  Description: Custom Portfolio and Shortcode functionality for TemplatesNext Wordpress Themes
6
- Version: 3.1.8
7
  Author: TemplatesNext
8
  Author URI: http://templatesnext.org/
9
  License: GPLv2 or later
3
  /*
4
  Plugin Name: TemplatesNext ToolKit
5
  Description: Custom Portfolio and Shortcode functionality for TemplatesNext Wordpress Themes
6
+ Version: 3.1.9
7
  Author: TemplatesNext
8
  Author URI: http://templatesnext.org/
9
  License: GPLv2 or later