Premium Addons for Elementor - Version 2.1.9

Version Description

  • Tweak: Added open links in new tab option in Premium Blog widget.
  • Tweak: Enhanced files loading speed.
  • Fix: Special characters bug in Premium Fancy Text Widget.
Download this release

Release Info

Developer leap13
Plugin Icon 128x128 Premium Addons for Elementor
Version 2.1.9
Comparing to
See all releases

Code changes from version 2.1.8 to 2.1.9

admin/settings-page.php CHANGED
@@ -356,7 +356,7 @@ class PA_admin_settings {
356
357
<tr class="pa-roll-row">
358
<th>Rollback Version</th>
359
- <td><div><?php echo sprintf( '<a target="_blank" href="%s" class="button pa-btn pa-rollback-button elementor-button-spinner">Reinstall Version 2.1.7</a>', wp_nonce_url( admin_url( 'admin-post.php?action=premium_addons_rollback' ), 'premium_addons_rollback' ) ); ?> </div><p class="pa-roll-desc"><span>Warning: Please backup your database before making the rollback.</span></p></td>
360
</tr>
361
<tr>
362
<th><h4 class="pa-beta-test">Become a Beta Tester</h4><span class="pa-beta-test-span">Turn-on Beta Tester, to get notified when a new beta version of Premium Addons for Elementor. The Beta version will not install automatically. You always have the option to ignore it.</span></th>
356
357
<tr class="pa-roll-row">
358
<th>Rollback Version</th>
359
+ <td><div><?php echo sprintf( '<a target="_blank" href="%s" class="button pa-btn pa-rollback-button elementor-button-spinner">Reinstall Version 2.1.8</a>', wp_nonce_url( admin_url( 'admin-post.php?action=premium_addons_rollback' ), 'premium_addons_rollback' ) ); ?> </div><p class="pa-roll-desc"><span>Warning: Please backup your database before making the rollback.</span></p></td>
360
</tr>
361
<tr>
362
<th><h4 class="pa-beta-test">Become a Beta Tester</h4><span class="pa-beta-test-span">Turn-on Beta Tester, to get notified when a new beta version of Premium Addons for Elementor. The Beta version will not install automatically. You always have the option to ignore it.</span></th>
assets/js/premium-addons.js CHANGED
@@ -1,4 +1,5 @@
1
(function($){
2
//Premium Progress Bar Handler
3
var PremiumProgressBarWidgetHandler = function ($scope,$){
4
var progressbarElement = $scope.find('.premium-progressbar-progress-bar').each(function(){
@@ -10,6 +11,7 @@
10
$(this).animate({width: length + '%'} , length * 25);
11
});
12
};
13
//Premium Progress Bar on Scroll Handler
14
var PremiumProgressBarScrollWidgetHandler = function ($scope,$){
15
$scope.waypoint(function (direction) {
@@ -19,6 +21,7 @@
19
triggerOnce: true
20
});
21
};
22
//Premium Video Box Handler
23
var PremiumVideoBoxWidgetHandler = function($scope,$){
24
var videoBoxElement = $scope.find('.premium-video-box-container');
@@ -33,6 +36,7 @@
33
},600);
34
});
35
};
36
//Premium Grid Handler
37
var PremiumGridWidgetHandler = function($scope,$){
38
if ($().isotope === undefined) {
@@ -95,6 +99,7 @@
95
social_tools: ''
96
});
97
};
98
//Premium Counter Handler
99
var PremiumCounterHandler = function($scope,$){
100
var counterElement = $scope.find('.premium-counter').each(function(){
@@ -152,13 +157,26 @@
152
});
153
});
154
};
155
- //Premium Fancy Text Handler
156
var PremiumFancyTextHandler = function($scope,$){
157
var fancyTextElement = $scope.find('.premium-fancy-text-wrapper');
158
var fancyTextSettings = fancyTextElement.data('settings');
159
if(fancyTextSettings['effect'] === 'typing'){
160
fancyTextElement.find('.premium-fancy-text').typed( {
161
- strings: fancyTextSettings['strings'],
162
typeSpeed: fancyTextSettings['typeSpeed'],
163
backSpeed: fancyTextSettings['backSpeed'],
164
startDelay:fancyTextSettings['startDelay'],
@@ -176,8 +194,8 @@
176
direction: "up"
177
});
178
}
179
- };
180
- //Premium Countdown Handler
181
var PremiumCountDownHandler = function ($scope,$){
182
var countDownElement = $scope.find('.premium-countdown').each(function(){
183
var countDownSettings = $(this).data('settings');
@@ -227,6 +245,7 @@
227
}
228
});
229
};
230
//Premium Carousel Handler
231
var PremiumCarouselHandler = function ($scope,$){
232
var carouselElement = $scope.find('.premium-carousel-wrapper').each(function(){
@@ -333,6 +352,7 @@
333
marginFix.setWidth('horizontal');
334
});
335
};
336
//Premium Banner Handler
337
var PremiumBannerHandler = function ($scope,$){
338
var bannerElement = $scope.find('.premium_banner');
@@ -344,6 +364,7 @@
344
$(this).find('.premium_addons-banner-ib-img').removeClass('active');
345
});
346
};
347
//Premium Modal Box Handler
348
var PremiumModalBoxHandler = function ($scope,$){
349
var modalBoxElement = $scope.find('.premium-modal-box-container');
1
(function($){
2
+
3
//Premium Progress Bar Handler
4
var PremiumProgressBarWidgetHandler = function ($scope,$){
5
var progressbarElement = $scope.find('.premium-progressbar-progress-bar').each(function(){
11
$(this).animate({width: length + '%'} , length * 25);
12
});
13
};
14
+
15
//Premium Progress Bar on Scroll Handler
16
var PremiumProgressBarScrollWidgetHandler = function ($scope,$){
17
$scope.waypoint(function (direction) {
21
triggerOnce: true
22
});
23
};
24
+
25
//Premium Video Box Handler
26
var PremiumVideoBoxWidgetHandler = function($scope,$){
27
var videoBoxElement = $scope.find('.premium-video-box-container');
36
},600);
37
});
38
};
39
+
40
//Premium Grid Handler
41
var PremiumGridWidgetHandler = function($scope,$){
42
if ($().isotope === undefined) {
99
social_tools: ''
100
});
101
};
102
+
103
//Premium Counter Handler
104
var PremiumCounterHandler = function($scope,$){
105
var counterElement = $scope.find('.premium-counter').each(function(){
157
});
158
});
159
};
160
+
161
+ //Premium Fancy Text Handler
162
var PremiumFancyTextHandler = function($scope,$){
163
var fancyTextElement = $scope.find('.premium-fancy-text-wrapper');
164
var fancyTextSettings = fancyTextElement.data('settings');
165
+ var fancyStrings = [];
166
+ fancyTextSettings['strings'].forEach(function(item){
167
+ fancyStrings.push(escapeHtml(item));
168
+ });
169
+ function escapeHtml(unsafe) {
170
+ return unsafe
171
+ .replace(/&/g, "&amp;")
172
+ .replace(/</g, "&lt;")
173
+ .replace(/>/g, "&gt;")
174
+ .replace(/"/g, "&quot;")
175
+ .replace(/'/g, "&#039;");
176
+ }
177
if(fancyTextSettings['effect'] === 'typing'){
178
fancyTextElement.find('.premium-fancy-text').typed( {
179
+ strings: fancyStrings,
180
typeSpeed: fancyTextSettings['typeSpeed'],
181
backSpeed: fancyTextSettings['backSpeed'],
182
startDelay:fancyTextSettings['startDelay'],
194
direction: "up"
195
});
196
}
197
+ };
198
+ //Premium Countdown Handler
199
var PremiumCountDownHandler = function ($scope,$){
200
var countDownElement = $scope.find('.premium-countdown').each(function(){
201
var countDownSettings = $(this).data('settings');
245
}
246
});
247
};
248
+
249
//Premium Carousel Handler
250
var PremiumCarouselHandler = function ($scope,$){
251
var carouselElement = $scope.find('.premium-carousel-wrapper').each(function(){
352
marginFix.setWidth('horizontal');
353
});
354
};
355
+
356
//Premium Banner Handler
357
var PremiumBannerHandler = function ($scope,$){
358
var bannerElement = $scope.find('.premium_banner');
364
$(this).find('.premium_addons-banner-ib-img').removeClass('active');
365
});
366
};
367
+
368
//Premium Modal Box Handler
369
var PremiumModalBoxHandler = function ($scope,$){
370
var modalBoxElement = $scope.find('.premium-modal-box-container');
premium-addons-for-elementor.php CHANGED
@@ -3,7 +3,7 @@
3
Plugin Name: Premium Addons for Elementor
4
Description: Premium Addons Plugin Includes 20 premium widgets for Elementor Page Builder.
5
Plugin URI: https://premiumaddons.com
6
- Version: 2.1.8
7
Author: Leap13
8
Author URI: http://leap13.com/
9
Text Domain: premium-addons-for-elementor
@@ -22,12 +22,12 @@ if( !function_exists('add_action') ) {
22
23
if( !defined( 'ABSPATH' ) ) exit; // No access of directly access
24
25
- define( 'PREMIUM_ADDONS_VERSION', '2.1.8' );
26
define( 'PREMIUM_ADDONS_URL', plugins_url('/', __FILE__ ) );
27
define( 'PREMIUM_ADDONS_PATH', plugin_dir_path( __FILE__ ) );
28
define( 'PREMIUM_ADDONS_FILE', __FILE__ );
29
define( 'PREMIUM_ADDONS_BASENAME', plugin_basename(__FILE__));
30
- define( 'PREMIUM_ADDONS_STABLE_VERSION', '2.1.7');
31
32
33
/**
@@ -185,80 +185,17 @@ define( 'PREMIUM_ADDONS_STABLE_VERSION', '2.1.7');
185
186
$check_component_active = get_option( 'pa_save_settings', $pa_default_settings );
187
188
- if( $check_component_active['premium-banner'] ) {
189
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-banner.php' );
190
- }
191
- if( $check_component_active['premium-carousel'] ) {
192
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-carousel.php' );
193
- }
194
-
195
- if( $check_component_active['premium-countdown'] ) {
196
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-countdown.php' );
197
- }
198
-
199
- if( $check_component_active['premium-counter'] ) {
200
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-counter.php' );
201
- }
202
-
203
- if( $check_component_active['premium-image-separator'] ) {
204
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-imageseparator.php' );
205
- }
206
-
207
- if( $check_component_active['premium-modalbox'] ) {
208
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-modalbox.php' );
209
- }
210
- if( $check_component_active['premium-progressbar'] ) {
211
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-progressbar.php' );
212
- }
213
-
214
- if( $check_component_active['premium-testimonials'] ) {
215
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-testimonials.php' );
216
- }
217
-
218
- if( $check_component_active['premium-title'] ) {
219
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-title.php' );
220
- }
221
-
222
- if( $check_component_active['premium-fancytext'] ) {
223
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-fancytext.php' );
224
- }
225
-
226
- if( $check_component_active['premium-videobox'] ) {
227
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-videobox.php' );
228
- }
229
-
230
- if( $check_component_active['premium-pricing-table'] ) {
231
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-pricing-table.php' );
232
- }
233
-
234
- if( $check_component_active['premium-blog'] ) {
235
- require_once( PREMIUM_ADDONS_PATH.'queries.php' );
236
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-blog.php' );
237
- }
238
-
239
- if( $check_component_active['premium-person'] ) {
240
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-person.php' );
241
- }
242
-
243
- if( $check_component_active['premium-maps'] ) {
244
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-maps.php' );
245
- }
246
-
247
- if( $check_component_active['premium-dual-header'] ) {
248
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-dual-header.php' );
249
- }
250
- if( $check_component_active['premium-button'] ) {
251
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-button.php' );
252
- }
253
- if( function_exists('wpcf7') && $check_component_active['premium-contactform'] ) {
254
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-contactform.php' );
255
- }
256
- if( $check_component_active['premium-image-button'] ) {
257
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-image-button.php' );
258
- }
259
- if( $check_component_active['premium-grid'] ) {
260
- require_once( PREMIUM_ADDONS_PATH. 'widgets/premium-grid.php' );
261
}
262
}
263
264
public function initiate_elementor_addons() {
3
Plugin Name: Premium Addons for Elementor
4
Description: Premium Addons Plugin Includes 20 premium widgets for Elementor Page Builder.
5
Plugin URI: https://premiumaddons.com
6
+ Version: 2.1.9
7
Author: Leap13
8
Author URI: http://leap13.com/
9
Text Domain: premium-addons-for-elementor
22
23
if( !defined( 'ABSPATH' ) ) exit; // No access of directly access
24
25
+ define( 'PREMIUM_ADDONS_VERSION', '2.1.9' );
26
define( 'PREMIUM_ADDONS_URL', plugins_url('/', __FILE__ ) );
27
define( 'PREMIUM_ADDONS_PATH', plugin_dir_path( __FILE__ ) );
28
define( 'PREMIUM_ADDONS_FILE', __FILE__ );
29
define( 'PREMIUM_ADDONS_BASENAME', plugin_basename(__FILE__));
30
+ define( 'PREMIUM_ADDONS_STABLE_VERSION', '2.1.8');
31
32
33
/**
185
186
$check_component_active = get_option( 'pa_save_settings', $pa_default_settings );
187
188
+ foreach($check_component_active as $element_name => $element_active){
189
+ if($element_active && $element_name != 'premium-contactform' && $element_name != 'premium-map-api' && $element_name != 'premium-map-disable-api' && $element_name != 'is-beta-tester' ){
190
+ if($element_name == 'premium-blog'){
191
+ require_once (PREMIUM_ADDONS_PATH . 'queries.php');
192
+ }
193
+ require_once (PREMIUM_ADDONS_PATH . 'widgets/' . $element_name . '.php');
194
+ } elseif ($element_active && $element_name == 'premium-contactform' && function_exists('wpcf7')){
195
+ require_once (PREMIUM_ADDONS_PATH . 'widgets/' . $element_name . '.php');
196
+ }
197
}
198
+
199
}
200
201
public function initiate_elementor_addons() {
readme.txt CHANGED
@@ -5,11 +5,11 @@ Donate link: http://premiumaddons.com
5
Requires at least: 4.5
6
Tested up to: 4.9.5
7
Requires PHP: 5.4
8
- Stable tag: 2.1.8
9
License: GPL v3.0
10
License URI: https://opensource.org/licenses/GPL-3.0
11
12
- 20 Premium Elementor Addons & Widgets like Grid, Modal Box, Carousel, Google Maps, Pricing Tables, Countdown, Testimonials, Blog, and much more.
13
14
== Description ==
15
20 Premium Elementor addons & widgets with numerous customization options that extends Elementor Page Builder capabilities to help you build impressive websites with no coding required. Click [Here](https://www.premiumaddons.com/) to check addon elements’ demos.
@@ -30,26 +30,26 @@ Premium Addons for Elementor can be used only as a complement of Elementor page
30
31
### Available Elements
32
33
- 1. [Premium Grid](https://www.premiumaddons.com/premium-grid-element-for-elementor-page-builder/) Highly customizable grid widget that can be used for creating attractive looking image galleries and portfolios.
34
- 2. [Premium Carousel](https://premiumaddons.com/premium-carousel-element-for-elementor-page-builder/) The best all purpose carousel widget for Elementor, It can be used to create testimonials carousel, client logos carousel, or any kind of content.
35
- 3. [Premium Banner](https://premiumaddons.com/premium-banner-element-for-elementor-page-builder/) Animated and interactive banner widget with multiple styles.
36
- 4. [Premium Google Maps](https://premiumaddons.com/premium-google-maps-element-elementor-page-builder/) Advanced Google Maps widget with multiple markers, custom styling and much more options.
37
- 5. [Premium Pricing Table](https://premiumaddons.com/premium-pricing-table-element-elementor-page-builder/) The most customizable Elementor Pricing Table Widget with tons of customization options.
38
- 6. [Premium Image Separator](https://premiumaddons.com/premium-image-separator-element-elementor-page-builder/) This element adds image separator between sections.
39
- 7. [Premium Fancy Text](https://premiumaddons.com/premium-fancy-text-element-elementor-page-builder/) Animated fancy text with many animation styles.
40
- 8. [Premium Heading](https://premiumaddons.com/premium-heading-element-elementor-page-builder/) This widget has many customizable ready made styles for headings.
41
- 9. [Premium Dual Header](https://premiumaddons.com/premium-dual-header-element-elementor-page-builder/) Create a header with 2 styles with numerous customization options.
42
- 10. [Premium Testimonials](https://premiumaddons.com/premium-testimonials-element-elementor-page-builder/) Modern testimonials widget with many customization options.
43
- 11. [Premium Persons](https://premiumaddons.com/premium-persons-element-elementor-page-builder/) Very good element for listing team members.
44
- 12. [Premium Countdown](https://premiumaddons.com/premium-countdown-element-elementor-page-builder/) Advanced countdown addon for elementor.
45
- 13. [Premium Blog](https://premiumaddons.com/premium-blog-element-elementor-page-builder/) Blog posts widget with modern style.
46
- 14. [Premium Counter](https://premiumaddons.com/premium-counter-element-elementor-page-builder/) Advanced counter elements with lots of options.
47
- 15. [Premium Video Box](https://premiumaddons.com/premium-video-box-element-elementor-page-builder/) Video box element with many customization features.
48
- 16. [Premium Modal Box](https://premiumaddons.com/premium-modal-box-element-elementor-page-builder/) All purpose Elementor modal box with many options.
49
- 17. [Premium Progress Bar](https://premiumaddons.com/premium-progress-bar-element-elementor-page-builder/) The most advanced progress bar available for Elementor.
50
- 19. [Premium Button](https://premiumaddons.com/premium-button-element-elementor-page-builder/) Advanced button with lots of interactive animation and styling options and onClick event option.
51
- 19. [Premium Contact Form 7](https://premiumaddons.com/premium-contact-form-7-element-elementor-page-builder/) Elementor contact form 7 add-on with 2 readymade styles.
52
- 20. [Premium Image Button](https://premiumaddons.com/premium-image-button-element-for-elementor-page-builder/) A unique element that can be used for innovative call to action ideas.
53
54
55
== Installation ==
@@ -99,6 +99,12 @@ Premium Addons for Elementor is light weight and we also gave you the control to
99
100
== Changelog ==
101
102
= 2.1.8 =
103
104
- Tweak: Added Ripple effect option for navigation dots in Premium Carousel widget.
5
Requires at least: 4.5
6
Tested up to: 4.9.5
7
Requires PHP: 5.4
8
+ Stable tag: 2.1.9
9
License: GPL v3.0
10
License URI: https://opensource.org/licenses/GPL-3.0
11
12
+ 20 Elementor Widgets and Addons like Grid, Modal Box, Carousel, Google Maps, Pricing Tables, Countdown, Testimonials, Blog, and much more.
13
14
== Description ==
15
20 Premium Elementor addons & widgets with numerous customization options that extends Elementor Page Builder capabilities to help you build impressive websites with no coding required. Click [Here](https://www.premiumaddons.com/) to check addon elements’ demos.
30
31
### Available Elements
32
33
+ 1. [Grid Elementor Widget](https://www.premiumaddons.com/premium-grid-element-for-elementor-page-builder/) Highly customizable grid widget that can be used for creating attractive looking image galleries and portfolios.
34
+ 2. [Carousel Elementor Widget](https://premiumaddons.com/premium-carousel-element-for-elementor-page-builder/) The best all purpose carousel widget for Elementor, It can be used to create testimonials carousel, client logos carousel, or any kind of content.
35
+ 3. [Banner Elementor Widget](https://premiumaddons.com/premium-banner-element-for-elementor-page-builder/) Animated and interactive banner widget with multiple styles.
36
+ 4. [Google Maps Elementor Widget](https://premiumaddons.com/premium-google-maps-element-elementor-page-builder/) Advanced Google Maps widget with multiple markers, custom styling and much more options.
37
+ 5. [Pricing Table Elementor Widget](https://premiumaddons.com/premium-pricing-table-element-elementor-page-builder/) The most customizable Elementor Pricing Table Widget with tons of customization options.
38
+ 6. [Image Separator Elementor Widget](https://premiumaddons.com/premium-image-separator-element-elementor-page-builder/) This element adds image separator between sections.
39
+ 7. [Fancy Text Elementor Widget](https://premiumaddons.com/premium-fancy-text-element-elementor-page-builder/) Animated fancy text with many animation styles.
40
+ 8. [Heading Elementor Widget](https://premiumaddons.com/premium-heading-element-elementor-page-builder/) This widget has many customizable ready made styles for headings.
41
+ 9. [Dual Header Elementor Widget](https://premiumaddons.com/premium-dual-header-element-elementor-page-builder/) Create a header with 2 styles with numerous customization options.
42
+ 10. [Testimonials Elementor Widget](https://premiumaddons.com/premium-testimonials-element-elementor-page-builder/) Modern testimonials widget with many customization options.
43
+ 11. [Persons Elementor Widget](https://premiumaddons.com/premium-persons-element-elementor-page-builder/) Very good element for listing team members.
44
+ 12. [Countdown Elementor Widget](https://premiumaddons.com/premium-countdown-element-elementor-page-builder/) Advanced countdown addon for elementor.
45
+ 13. [Blog Elementor Widget](https://premiumaddons.com/premium-blog-element-elementor-page-builder/) Blog posts widget with modern style.
46
+ 14. [Counter Elementor Widget](https://premiumaddons.com/premium-counter-element-elementor-page-builder/) Advanced counter elements with lots of options.
47
+ 15. [Video Box Elementor Widget](https://premiumaddons.com/premium-video-box-element-elementor-page-builder/) Video box element with many customization features.
48
+ 16. [Modal Box Elementor Widget](https://premiumaddons.com/premium-modal-box-element-elementor-page-builder/) All purpose Elementor modal box with many options.
49
+ 17. [Progress Bar Elementor Widget](https://premiumaddons.com/premium-progress-bar-element-elementor-page-builder/) The most advanced progress bar available for Elementor.
50
+ 19. [Button Elementor Widget](https://premiumaddons.com/premium-button-element-elementor-page-builder/) Advanced button with lots of interactive animation and styling options and onClick event option.
51
+ 19. [Contact Form 7 Elementor Widget](https://premiumaddons.com/premium-contact-form-7-element-elementor-page-builder/) Elementor contact form 7 add-on with 2 readymade styles.
52
+ 20. [Image Button Elementor Widget](https://premiumaddons.com/premium-image-button-element-for-elementor-page-builder/) A unique element that can be used for innovative call to action ideas.
53
54
55
== Installation ==
99
100
== Changelog ==
101
102
+ = 2.1.9 =
103
+
104
+ - Tweak: Added open links in new tab option in Premium Blog widget.
105
+ - Tweak: Enhanced files loading speed.
106
+ - Fix: Special characters bug in Premium Fancy Text Widget.
107
+
108
= 2.1.8 =
109
110
- Tweak: Added Ripple effect option for navigation dots in Premium Carousel widget.
widgets/premium-blog.php CHANGED
@@ -184,13 +184,21 @@ class Premium_Blog_Widget extends Widget_Base
184
]
185
);
186
187
- /*Paging*/
188
$this->add_control('premium_blog_paging',
189
[
190
'label' => esc_html__('Pagination', 'premium-addons-for-elementor'),
191
'type' => Controls_Manager::SWITCHER,
192
'description' => esc_html__('Pagination is the process of dividing the posts into discrete pages','premium-addons-for-elementor'),
193
- 'default' => 'no',
194
]
195
);
196
@@ -683,6 +691,12 @@ class Premium_Blog_Widget extends Widget_Base
683
// get our input from the widget settings.
684
$settings = $this->get_settings();
685
686
$image_effect = $settings['premium_blog_hover_image_effect'];
687
688
$post_effect = $settings['premium_blog_hover_color_effect'];
@@ -708,10 +722,10 @@ if(count($posts)){
708
<div class="premium-blog-post-container">
709
<div class="premium-blog-thumb-effect-wrapper">
710
<div class="premium-blog-thumbnail-container <?php echo 'premium-blog-' . $image_effect . '-effect';?>">
711
- <a href="<?php the_permalink(); ?>" target="_blank"><?php the_post_thumbnail('full'); ?></a>
712
</div>
713
<div class="premium-blog-effect-container <?php echo 'premium-blog-'. $post_effect . '-effect'; ?>">
714
- <a class="premium-blog-post-link" href="<?php the_permalink(); ?>" target="_blank"></a>
715
<?php if( $settings['premium_blog_hover_color_effect'] === 'bordered' ) : ?>
716
<div class="premium-blog-bordered-border-container"></div>
717
<?php elseif( $settings['premium_blog_hover_color_effect'] === 'squares' ) : ?>
@@ -723,7 +737,7 @@ if(count($posts)){
723
<div class="premium-blog-inner-container">
724
<?php if( $settings['premium_blog_post_format_icon'] === 'yes' ) : ?>
725
<div class="premium-blog-format-container">
726
- <a class="premium-blog-format-link" href="<?php the_permalink(); ?>" title="<?php if( get_post_format() === ' ') : echo 'standard' ; else : echo get_post_format(); endif; ?>" target="_blank"><i class="premium-blog-format-icon fa fa-<?php if ( get_post_format() === 'aside' ) : echo 'file-text-o'; ?>
727
<?php elseif ( get_post_format() === 'audio' ) : echo 'music'; ?>
728
<?php elseif ( get_post_format() === 'gallery' ) : echo 'file-image-o'; ?>
729
<?php elseif ( get_post_format() === 'image' ) : echo 'picture-o'; ?>
@@ -735,19 +749,19 @@ if(count($posts)){
735
</div>
736
<?php endif; ?>
737
<div class="premium-blog-entry-container">
738
- <h2 class="premium-blog-entry-title"><a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></h2>
739
<div class="premium-blog-entry-meta" style="<?php if( $settings['premium_blog_post_format_icon'] !== 'yes' ) : echo 'margin-left:0px'; endif; ?>">
740
<?php if( $settings['premium_blog_author_meta'] === 'yes' ) : ?>
741
<span class="premium-blog-post-author premium-blog-meta-data"><i class="fa fa-user fa-fw"></i><?php the_author_posts_link();?></span>
742
<?php endif; ?>
743
<?php if( $settings['premium_blog_date_meta'] === 'yes' ) : ?>
744
- <span class="premium-blog-post-time premium-blog-meta-data"><i class="fa fa-calendar fa-fw"></i><a href="<?php the_permalink(); ?>" target="_blank"><?php the_time('F j, Y'); ?></a></span>
745
<?php endif; ?>
746
<?php if( $settings['premium_blog_categories_meta'] === 'yes' ) : ?>
747
<span class="premium-blog-post-categories premium-blog-meta-data"><i class="fa fa-align-left fa-fw"></i><?php the_category(', '); ?></span>
748
<?php endif; ?>
749
<?php if( $settings['premium_blog_comments_meta'] === 'yes' ) : ?>
750
- <span class="premium-blog-post-comments premium-blog-meta-data"><i class="fa fa-comments-o fa-fw"></i><a href="<?php the_permalink(); ?>" target="_blank"><?php comments_number('0 Comments', '1', '%'); ?> </a></span>
751
<?php endif; ?>
752
<?php if( $settings['premium_blog_edit_post'] === 'yes' ) : ?>
753
<span class="premium-blog-post-edit premium-blog-meta-data"><i class="fa fa-pencil fa-fw"></i><?php edit_post_link(); ?></span>
184
]
185
);
186
187
+ /*Pagination*/
188
$this->add_control('premium_blog_paging',
189
[
190
'label' => esc_html__('Pagination', 'premium-addons-for-elementor'),
191
'type' => Controls_Manager::SWITCHER,
192
'description' => esc_html__('Pagination is the process of dividing the posts into discrete pages','premium-addons-for-elementor'),
193
+ ]
194
+ );
195
+
196
+ $this->add_control('premium_blog_new_tab',
197
+ [
198
+ 'label' => esc_html__('Links in New Tab', 'premium-addons-for-elementor'),
199
+ 'type' => Controls_Manager::SWITCHER,
200
+ 'description' => esc_html__('Enable links to be opened in a new tab','premium-addons-for-elementor'),
201
+ 'default' => 'yes',
202
]
203
);
204
691
// get our input from the widget settings.
692
$settings = $this->get_settings();
693
694
+ if($settings['premium_blog_new_tab'] == 'yes'){
695
+ $target = '_blank';
696
+ } else {
697
+ $target = '_self';
698
+ }
699
+
700
$image_effect = $settings['premium_blog_hover_image_effect'];
701
702
$post_effect = $settings['premium_blog_hover_color_effect'];
722
<div class="premium-blog-post-container">
723
<div class="premium-blog-thumb-effect-wrapper">
724
<div class="premium-blog-thumbnail-container <?php echo 'premium-blog-' . $image_effect . '-effect';?>">
725
+ <a href="<?php the_permalink(); ?>" target="<?php echo esc_attr($target); ?>"><?php the_post_thumbnail('full'); ?></a>
726
</div>
727
<div class="premium-blog-effect-container <?php echo 'premium-blog-'. $post_effect . '-effect'; ?>">
728
+ <a class="premium-blog-post-link" href="<?php the_permalink(); ?>" target="<?php echo esc_attr($target); ?>"></a>
729
<?php if( $settings['premium_blog_hover_color_effect'] === 'bordered' ) : ?>
730
<div class="premium-blog-bordered-border-container"></div>
731
<?php elseif( $settings['premium_blog_hover_color_effect'] === 'squares' ) : ?>
737
<div class="premium-blog-inner-container">
738
<?php if( $settings['premium_blog_post_format_icon'] === 'yes' ) : ?>
739
<div class="premium-blog-format-container">
740
+ <a class="premium-blog-format-link" href="<?php the_permalink(); ?>" title="<?php if( get_post_format() === ' ') : echo 'standard' ; else : echo get_post_format(); endif; ?>" target="<?php echo esc_attr($target); ?>"><i class="premium-blog-format-icon fa fa-<?php if ( get_post_format() === 'aside' ) : echo 'file-text-o'; ?>
741
<?php elseif ( get_post_format() === 'audio' ) : echo 'music'; ?>
742
<?php elseif ( get_post_format() === 'gallery' ) : echo 'file-image-o'; ?>
743
<?php elseif ( get_post_format() === 'image' ) : echo 'picture-o'; ?>
749
</div>
750
<?php endif; ?>
751
<div class="premium-blog-entry-container">
752
+ <h2 class="premium-blog-entry-title"><a href="<?php the_permalink(); ?>" target="<?php echo esc_attr($target); ?>"><?php the_title(); ?></a></h2>
753
<div class="premium-blog-entry-meta" style="<?php if( $settings['premium_blog_post_format_icon'] !== 'yes' ) : echo 'margin-left:0px'; endif; ?>">
754
<?php if( $settings['premium_blog_author_meta'] === 'yes' ) : ?>
755
<span class="premium-blog-post-author premium-blog-meta-data"><i class="fa fa-user fa-fw"></i><?php the_author_posts_link();?></span>
756
<?php endif; ?>
757
<?php if( $settings['premium_blog_date_meta'] === 'yes' ) : ?>
758
+ <span class="premium-blog-post-time premium-blog-meta-data"><i class="fa fa-calendar fa-fw"></i><a href="<?php the_permalink(); ?>" target="<?php echo esc_attr($target); ?>"><?php the_time('F j, Y'); ?></a></span>
759
<?php endif; ?>
760
<?php if( $settings['premium_blog_categories_meta'] === 'yes' ) : ?>
761
<span class="premium-blog-post-categories premium-blog-meta-data"><i class="fa fa-align-left fa-fw"></i><?php the_category(', '); ?></span>
762
<?php endif; ?>
763
<?php if( $settings['premium_blog_comments_meta'] === 'yes' ) : ?>
764
+ <span class="premium-blog-post-comments premium-blog-meta-data"><i class="fa fa-comments-o fa-fw"></i><a href="<?php the_permalink(); ?>" target="<?php echo esc_attr($target); ?>"><?php comments_number('0 Comments', '1', '%'); ?> </a></span>
765
<?php endif; ?>
766
<?php if( $settings['premium_blog_edit_post'] === 'yes' ) : ?>
767
<span class="premium-blog-post-edit premium-blog-meta-data"><i class="fa fa-pencil fa-fw"></i><?php edit_post_link(); ?></span>
widgets/{premium-imageseparator.php → premium-image-separator.php} RENAMED
File without changes