Version Description
- Tweak: Added link option to excerpt in Premium Blog widget.
- Fix: Network site activation redirection issue.
Download this release
Release Info
Developer | leap13 |
Plugin | Premium Addons for Elementor |
Version | 2.3.2 |
Comparing to | |
See all releases |
Code changes from version 2.3.1 to 2.3.2
- admin/settings-page.php +1 -1
- assets/css/premium-addons.css +2 -1
- premium-addons-for-elementor.php +5 -6
- queries.php +9 -4
- readme.txt +27 -22
- widgets/premium-blog.php +34 -4
admin/settings-page.php
CHANGED
@@ -373,7 +373,7 @@ class PA_admin_settings {
|
|
373 |
|
374 |
<tr class="pa-roll-row">
|
375 |
<th>Rollback Version</th>
|
376 |
-
<td><div><?php echo sprintf( '<a target="_blank" href="%s" class="button pa-btn pa-rollback-button elementor-button-spinner">Reinstall Version 2.3.
|
377 |
</tr>
|
378 |
<tr>
|
379 |
<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>
|
373 |
|
374 |
<tr class="pa-roll-row">
|
375 |
<th>Rollback Version</th>
|
376 |
+
<td><div><?php echo sprintf( '<a target="_blank" href="%s" class="button pa-btn pa-rollback-button elementor-button-spinner">Reinstall Version 2.3.1</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>
|
377 |
</tr>
|
378 |
<tr>
|
379 |
<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/css/premium-addons.css
CHANGED
@@ -1770,7 +1770,8 @@ button.premium-modal-box-modal-close {
|
|
1770 |
}
|
1771 |
.premium-blog-entry-title a,
|
1772 |
.premium-blog-meta-data a,
|
1773 |
-
.premium-blog-post-tags a
|
|
|
1774 |
-webkit-transition: color 0.3s ease-in-out;
|
1775 |
-moz-transition: color 0.3s ease-in-out;
|
1776 |
-ms-transition: color 0.3s ease-in-out;
|
1770 |
}
|
1771 |
.premium-blog-entry-title a,
|
1772 |
.premium-blog-meta-data a,
|
1773 |
+
.premium-blog-post-tags a,
|
1774 |
+
.premium-blog-post-content .premium-blog-excerpt-link {
|
1775 |
-webkit-transition: color 0.3s ease-in-out;
|
1776 |
-moz-transition: color 0.3s ease-in-out;
|
1777 |
-ms-transition: color 0.3s ease-in-out;
|
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.3.
|
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.3.
|
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.3.
|
31 |
|
32 |
|
33 |
/**
|
@@ -82,9 +82,8 @@ define( 'PREMIUM_ADDONS_STABLE_VERSION', '2.3.0');
|
|
82 |
function pa_redirection() {
|
83 |
if (get_option('pa_activation_redirect', false)) {
|
84 |
delete_option('pa_activation_redirect');
|
85 |
-
|
86 |
-
|
87 |
-
wp_redirect("admin.php?page=pa-settings-page");
|
88 |
}
|
89 |
}
|
90 |
};
|
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.3.2
|
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.3.2' );
|
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.3.1');
|
31 |
|
32 |
|
33 |
/**
|
82 |
function pa_redirection() {
|
83 |
if (get_option('pa_activation_redirect', false)) {
|
84 |
delete_option('pa_activation_redirect');
|
85 |
+
if (!is_network_admin()) {
|
86 |
+
wp_redirect("admin.php?page=pa-settings-page");
|
|
|
87 |
}
|
88 |
}
|
89 |
};
|
queries.php
CHANGED
@@ -24,11 +24,11 @@ function premium_blog_get_post_settings($settings){
|
|
24 |
return $post_args;
|
25 |
}
|
26 |
|
27 |
-
function premium_addons_get_excerpt_by_id($post_id,$excerpt_length){
|
28 |
$the_post = get_post($post_id); //Gets post ID
|
29 |
|
30 |
$the_excerpt = null;
|
31 |
-
if ($the_post)
|
32 |
{
|
33 |
$the_excerpt = $the_post->post_excerpt ? $the_post->post_excerpt : $the_post->post_content;
|
34 |
}
|
@@ -38,7 +38,12 @@ function premium_addons_get_excerpt_by_id($post_id,$excerpt_length){
|
|
38 |
|
39 |
if(count($words) > $excerpt_length) :
|
40 |
array_pop($words);
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
42 |
$the_excerpt = implode(' ', $words);
|
43 |
endif;
|
44 |
|
@@ -58,4 +63,4 @@ function premium_addons_post_type_categories(){
|
|
58 |
}
|
59 |
|
60 |
return $options;
|
61 |
-
}
|
24 |
return $post_args;
|
25 |
}
|
26 |
|
27 |
+
function premium_addons_get_excerpt_by_id($post_id,$excerpt_length,$excerpt_type,$exceprt_text){
|
28 |
$the_post = get_post($post_id); //Gets post ID
|
29 |
|
30 |
$the_excerpt = null;
|
31 |
+
if ($the_post) //If
|
32 |
{
|
33 |
$the_excerpt = $the_post->post_excerpt ? $the_post->post_excerpt : $the_post->post_content;
|
34 |
}
|
38 |
|
39 |
if(count($words) > $excerpt_length) :
|
40 |
array_pop($words);
|
41 |
+
if( 'dots' == $excerpt_type){
|
42 |
+
array_push($words, '…');
|
43 |
+
} else {
|
44 |
+
array_push($words, ' <a href="' . get_permalink($post_id) .'" class="premium-blog-excerpt-link">' . $exceprt_text . '</a>');
|
45 |
+
}
|
46 |
+
|
47 |
$the_excerpt = implode(' ', $words);
|
48 |
endif;
|
49 |
|
63 |
}
|
64 |
|
65 |
return $options;
|
66 |
+
}
|
readme.txt
CHANGED
@@ -5,14 +5,14 @@ Donate link: http://premiumaddons.com
|
|
5 |
Requires at least: 4.5
|
6 |
Tested up to: 4.9.6
|
7 |
Requires PHP: 5.4
|
8 |
-
Stable tag: 2.3.
|
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://
|
16 |
|
17 |
Premium Addons for elementor plugin’s widgets & addons are cross browser compatible and also fully responsive, Your website will rock on all browsers as well as tables and mobile devices.
|
18 |
|
@@ -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. [Grid Elementor Widget](https://
|
34 |
-
2. [Carousel Elementor Widget](https://
|
35 |
-
3. [Banner Elementor Widget](https://
|
36 |
-
4. [Google Maps Elementor Widget](https://
|
37 |
-
5. [Pricing Table Elementor Widget](https://
|
38 |
-
6. [Image Separator Elementor Widget](https://
|
39 |
-
7. [Fancy Text Elementor Widget](https://
|
40 |
-
8. [Heading Elementor Widget](https://
|
41 |
-
9. [Dual Header Elementor Widget](https://
|
42 |
-
10. [Testimonials Elementor Widget](https://
|
43 |
-
11. [Persons Elementor Widget](https://
|
44 |
-
12. [Countdown Elementor Widget](https://
|
45 |
-
13. [Blog Elementor Widget](https://
|
46 |
-
14. [Counter Elementor Widget](https://
|
47 |
-
15. [Video Box Elementor Widget](https://
|
48 |
-
16. [Modal Box Elementor Widget](https://
|
49 |
-
17. [Progress Bar Elementor Widget](https://
|
50 |
-
19. [Button Elementor Widget](https://
|
51 |
-
19. [Contact Form 7 Elementor Widget](https://
|
52 |
-
20. [Image Button Elementor Widget](https://
|
53 |
|
54 |
|
55 |
== Installation ==
|
@@ -99,6 +99,11 @@ Premium Addons for Elementor is light weight and we also gave you the control to
|
|
99 |
|
100 |
== Changelog ==
|
101 |
|
|
|
|
|
|
|
|
|
|
|
102 |
= 2.3.1 =
|
103 |
|
104 |
- Tweak: Added support for dynamic fields to all widgets.
|
5 |
Requires at least: 4.5
|
6 |
Tested up to: 4.9.6
|
7 |
Requires PHP: 5.4
|
8 |
+
Stable tag: 2.3.2
|
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://premiumaddons.com/) to check addon elements’ demos.
|
16 |
|
17 |
Premium Addons for elementor plugin’s widgets & addons are cross browser compatible and also fully responsive, Your website will rock on all browsers as well as tables and mobile devices.
|
18 |
|
30 |
|
31 |
### Available Elements
|
32 |
|
33 |
+
1. [Grid Elementor Widget](https://premiumaddons.com/grid-widget-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/carousel-widget-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/banner-widget-for-elementor-page-builder/) Animated and interactive banner widget with multiple styles.
|
36 |
+
4. [Google Maps Elementor Widget](https://premiumaddons.com/google-maps-widget-for-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/pricing-table-widget-for-elementor-page-builder/) The most customizable Elementor Pricing Table Widget with tons of customization options.
|
38 |
+
6. [Image Separator Elementor Widget](https://premiumaddons.com/image-separator-widget-elementor-page-builder/) This element adds image separator between sections.
|
39 |
+
7. [Fancy Text Elementor Widget](https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/) Animated fancy text with many animation styles.
|
40 |
+
8. [Heading Elementor Widget](https://premiumaddons.com/heading-widget-for-elementor-page-builder/) This widget has many customizable ready made styles for headings.
|
41 |
+
9. [Dual Header Elementor Widget](https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/) Create a header with 2 styles with numerous customization options.
|
42 |
+
10. [Testimonials Elementor Widget](https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/) Modern testimonials widget with many customization options.
|
43 |
+
11. [Persons Elementor Widget](https://premiumaddons.com/persons-widget-for-elementor-page-builder/) Very good element for listing team members.
|
44 |
+
12. [Countdown Elementor Widget](https://premiumaddons.com/countdown-widget-for-elementor-page-builder/) Advanced countdown addon for elementor.
|
45 |
+
13. [Blog Elementor Widget](https://premiumaddons.com/blog-widget-for-elementor-page-builder/) Blog posts widget with modern style.
|
46 |
+
14. [Counter Elementor Widget](https://premiumaddons.com/counter-widget-for-elementor-page-builder/) Advanced counter elements with lots of options.
|
47 |
+
15. [Video Box Elementor Widget](https://premiumaddons.com/video-box-widget-for-elementor-page-builder/) Video box element with many customization features.
|
48 |
+
16. [Modal Box Elementor Widget](https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/) All purpose Elementor modal box with many options.
|
49 |
+
17. [Progress Bar Elementor Widget](https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/) The most advanced progress bar available for Elementor.
|
50 |
+
19. [Button Elementor Widget](https://premiumaddons.com/button-widget-for-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/contact-form-7-widget-for-elementor-page-builder/) Elementor contact form 7 add-on with 2 readymade styles.
|
52 |
+
20. [Image Button Elementor Widget](https://premiumaddons.com/image-button-widget-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.3.2 =
|
103 |
+
|
104 |
+
- Tweak: Added link option to excerpt in Premium Blog widget.
|
105 |
+
- Fix: Network site activation redirection issue.
|
106 |
+
|
107 |
= 2.3.1 =
|
108 |
|
109 |
- Tweak: Added support for dynamic fields to all widgets.
|
widgets/premium-blog.php
CHANGED
@@ -145,6 +145,33 @@ class Premium_Blog_Widget extends Widget_Base
|
|
145 |
]
|
146 |
);
|
147 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
148 |
/*Author Meta*/
|
149 |
$this->add_control('premium_blog_author_meta',
|
150 |
[
|
@@ -406,7 +433,7 @@ class Premium_Blog_Widget extends Widget_Base
|
|
406 |
'value' => Scheme_Color::COLOR_2,
|
407 |
],
|
408 |
'selectors' => [
|
409 |
-
'{{WRAPPER}} .premium-blog-entry-meta, {{WRAPPER}} .premium-blog-entry-meta a' => 'color: {{VALUE}};',
|
410 |
]
|
411 |
]
|
412 |
);
|
@@ -417,7 +444,7 @@ class Premium_Blog_Widget extends Widget_Base
|
|
417 |
[
|
418 |
'name' => 'premium_blog_meta_typo',
|
419 |
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
420 |
-
'selector' => '{{WRAPPER}} .premium-blog-entry-meta a',
|
421 |
]
|
422 |
);
|
423 |
|
@@ -431,7 +458,7 @@ class Premium_Blog_Widget extends Widget_Base
|
|
431 |
'value' => Scheme_Color::COLOR_1,
|
432 |
],
|
433 |
'selectors' => [
|
434 |
-
'{{WRAPPER}} .premium-blog-entry-meta a:hover' => 'color: {{VALUE}};',
|
435 |
]
|
436 |
]
|
437 |
);
|
@@ -738,6 +765,9 @@ class Premium_Blog_Widget extends Widget_Base
|
|
738 |
$post_args = premium_blog_get_post_settings($settings);
|
739 |
|
740 |
$posts = premium_blog_get_post_data($post_args, $paged , $new_offset);
|
|
|
|
|
|
|
741 |
?>
|
742 |
<?php
|
743 |
if(count($posts)){
|
@@ -800,7 +830,7 @@ if(count($posts)){
|
|
800 |
<div class="premium-blog-post-content" style="<?php if ( $settings['premium_blog_post_format_icon'] !== 'yes' ) : echo 'margin-left:0px;'; endif; ?>">
|
801 |
<?php
|
802 |
if ( $settings['premium_blog_excerpt'] === 'yes' ) :
|
803 |
-
echo premium_addons_get_excerpt_by_id(get_the_ID(),$settings['premium_blog_excerpt_length']);
|
804 |
else: the_content();
|
805 |
endif; ?>
|
806 |
</div>
|
145 |
]
|
146 |
);
|
147 |
|
148 |
+
/*Excerpt Type*/
|
149 |
+
$this->add_control('premium_blog_excerpt_type',
|
150 |
+
[
|
151 |
+
'label' => esc_html__('Excerpt Type', 'premium-addons-for-elementor'),
|
152 |
+
'type' => Controls_Manager::SELECT,
|
153 |
+
'options' => [
|
154 |
+
'dots' => esc_html__('Dots', 'premium-addons-for-elementor'),
|
155 |
+
'link' => esc_html__('Link', 'premium-addons-for-elementor'),
|
156 |
+
],
|
157 |
+
'default' => 'dots',
|
158 |
+
'label_block' => true
|
159 |
+
]
|
160 |
+
);
|
161 |
+
|
162 |
+
/*Excerpt Text*/
|
163 |
+
$this->add_control('premium_blog_excerpt_text',
|
164 |
+
[
|
165 |
+
'label' => esc_html__( 'Link Text', 'premium-addons-for-elementor' ),
|
166 |
+
'type' => Controls_Manager::TEXT,
|
167 |
+
'default' => esc_html__('continue reading','premium-addons-for-elementor'),
|
168 |
+
'condition' => [
|
169 |
+
'premium_blog_excerpt' => 'yes',
|
170 |
+
'premium_blog_excerpt_type' => 'link'
|
171 |
+
]
|
172 |
+
]
|
173 |
+
);
|
174 |
+
|
175 |
/*Author Meta*/
|
176 |
$this->add_control('premium_blog_author_meta',
|
177 |
[
|
433 |
'value' => Scheme_Color::COLOR_2,
|
434 |
],
|
435 |
'selectors' => [
|
436 |
+
'{{WRAPPER}} .premium-blog-entry-meta, {{WRAPPER}} .premium-blog-entry-meta a, {{WRAPPER}} .premium-blog-post-content .premium-blog-excerpt-link' => 'color: {{VALUE}};',
|
437 |
]
|
438 |
]
|
439 |
);
|
444 |
[
|
445 |
'name' => 'premium_blog_meta_typo',
|
446 |
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
447 |
+
'selector' => '{{WRAPPER}} .premium-blog-entry-meta a,{{WRAPPER}} .premium-blog-post-content .premium-blog-excerpt-link',
|
448 |
]
|
449 |
);
|
450 |
|
458 |
'value' => Scheme_Color::COLOR_1,
|
459 |
],
|
460 |
'selectors' => [
|
461 |
+
'{{WRAPPER}} .premium-blog-entry-meta a:hover, {{WRAPPER}} .premium-blog-post-content .premium-blog-excerpt-link:hover' => 'color: {{VALUE}};',
|
462 |
]
|
463 |
]
|
464 |
);
|
765 |
$post_args = premium_blog_get_post_settings($settings);
|
766 |
|
767 |
$posts = premium_blog_get_post_data($post_args, $paged , $new_offset);
|
768 |
+
|
769 |
+
$excerpt_type = $settings['premium_blog_excerpt_type'];
|
770 |
+
$excerpt_text = $settings['premium_blog_excerpt_text'];
|
771 |
?>
|
772 |
<?php
|
773 |
if(count($posts)){
|
830 |
<div class="premium-blog-post-content" style="<?php if ( $settings['premium_blog_post_format_icon'] !== 'yes' ) : echo 'margin-left:0px;'; endif; ?>">
|
831 |
<?php
|
832 |
if ( $settings['premium_blog_excerpt'] === 'yes' ) :
|
833 |
+
echo premium_addons_get_excerpt_by_id(get_the_ID(),$settings['premium_blog_excerpt_length'],$excerpt_type,$excerpt_text);
|
834 |
else: the_content();
|
835 |
endif; ?>
|
836 |
</div>
|