PluginProbe
ShopBuilder – WooCommerce Builder For Elementor / 2.6.5
ShopBuilder – WooCommerce Builder For Elementor v2.6.5
3.4.2 3.4.1 3.4.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 All 63 releases
← All changes | app/Abstracts/ElementorWidgetBase.php +40 -5 2.2.22.6.5 View file →
@@ -6,8 +6,9 @@
6 6 */
7 7
8 8 namespace RadiusTheme\SB\Abstracts;
9 9
10 +use Elementor\Group_Control_Css_Filter;
10 11 use Elementor\Plugin;
11 12 use Elementor\Repeater;
12 13 use Elementor\Widget_Base;
13 14 use Elementor\Controls_Manager;
@@ -186,9 +187,9 @@
186 187 *
187 188 * @return array
188 189 */
189 190 public function promo_content() {
190 - if ( rtsb()->has_pro() ) {
191 + if ( rtsb()->has_pro() || $this->widget_exceptions() ) {
191 192 return [];
192 193 }
193 194
194 195 $promo_fields = [];
@@ -296,9 +297,15 @@
296 297 }
297 298 if ( isset( $value['mode'] ) && 'responsive' === $value['mode'] ) {
298 299 unset( $value['mode'] );
299 300 $repeater->add_responsive_control( $rf_id, $value );
300 - } else {
301 + } elseif ( isset( $value['mode'] ) && 'group' === $value['mode'] ) {
302 + $type = $value['type'];
303 + $value['name'] = $rf_id;
304 + unset( $value['mode'] );
305 + unset( $value['type'] );
306 + $repeater->add_group_control( $type, $value );
307 + } else {
301 308 $repeater->add_control( $rf_id, $value );
302 309 }
303 310 }
304 311
@@ -388,8 +395,9 @@
388 395 if ( ! $this->is_edit_mode() ) {
389 396 return;
390 397 }
391 398 $ajaxurl = admin_url( 'admin-ajax.php' );
399 +
392 400 if ( in_array( 'sitepress-multilingual-cms/sitepress.php', get_option( 'active_plugins' ) ) ) {
393 401 $ajaxurl = admin_url( 'admin-ajax.php?lang=' . ICL_LANGUAGE_CODE );
394 402 }
395 403 ?>
@@ -405,9 +413,18 @@
405 413 setTimeout(function() {
406 414 rtsbProductPageInit();
407 415 }, 1000);
408 416 <?php if ( rtsb()->has_pro() ) { ?>
409 - rtsbFilters();
417 + var isMasonry = jQuery('.rtsb-elementor-container .rtsb-masonry');
418 +
419 + if(isMasonry.length > 0) {
420 + isMasonry.masonry();
421 + }
422 +
423 + if (typeof rtsbFilters === 'function') {
424 + rtsbFilters();
425 + }
426 +
410 427 setTimeout( function (){
411 428 window.rtsbCountdownApply();
412 429 }, 1000 );
413 430 <?php } ?>
@@ -656,13 +673,16 @@
656 673
657 674 case 'text-stroke':
658 675 $type = Group_Control_Text_Stroke::get_type();
659 676 break;
677 +
678 + case 'css-filter':
679 + $type = Group_Control_Css_Filter::get_type();
680 + break;
660 681 default:
661 682 $type = constant( 'Elementor\Controls_Manager::' . strtoupper( $type ) );
662 683
663 684 }
664 -
665 685 return $type;
666 686 }
667 687
668 688 /**
@@ -744,9 +764,9 @@
744 764
745 765 /**
746 766 * Elementor controls marge all settings
747 767 *
748 - * @return array
768 + * @return void
749 769 */
750 770 protected function apply_hooks_before_render() {
751 771 if ( $this->is_edit_mode() ) {
752 772 add_filter( 'wp_calculate_image_srcset_meta', '__return_null' );
@@ -762,6 +782,21 @@
762 782 protected function has_checkout_restriction() {
763 783 $checkout = WC()->checkout();
764 784
765 785 return ! $checkout->is_registration_enabled() && $checkout->is_registration_required() && ! is_user_logged_in();
786 + }
787 +
788 + /**
789 + * Widget Exceptions.
790 + *
791 + * @return bool
792 + */
793 + private function widget_exceptions() {
794 + $exceptions = [
795 + 'rtsb-product-filters',
796 + 'rtsb-wishlist',
797 + 'rtsb-product-breadcrumbs',
798 + ];
799 +
800 + return in_array( $this->rtsb_base, $exceptions, true );
766 801 }
767 802 }