PluginProbe
ShopBuilder – WooCommerce Builder For Elementor / 3.2.6
ShopBuilder – WooCommerce Builder For Elementor v3.2.6
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/Elementor/Widgets/Controls/LayoutFields.php +58 -25 2.2.23.2.6 View file →
@@ -366,17 +366,35 @@
366 366 'label' => esc_html__( 'Number of Columns', 'shopbuilder' ),
367 367 'description' => esc_html__( 'Please select the number of columns to show per row.', 'shopbuilder' ),
368 368 'options' => ControlHelper::layout_columns(),
369 369 'label_block' => true,
370 + 'render_type' => 'template',
370 371 'default' => '0',
371 372 'tablet_default' => '2',
372 373 'mobile_default' => '1',
373 374 'required' => true,
375 + 'separator' => rtsb()->has_pro() ? 'default' : 'default elementor-control-separator-after',
374 376 'selectors' => [
375 - $obj->selectors['columns']['cols'] => 'grid-template-columns: repeat({{VALUE}}, minmax(0, 1fr));',
377 + $obj->selectors['columns']['cols'] => 'grid-template-columns: repeat({{VALUE}}, minmax(0, 1fr));',
378 + $obj->selectors['columns']['masonry'] => '--rtsb-masonry-columns: {{VALUE}};',
379 + $obj->selectors['columns']['list_masonry'] => '--rtsb-masonry-list-columns: {{VALUE}};',
376 380 ],
377 381 ];
378 382
383 + $fields['grid_style'] = [
384 + 'type' => 'select2',
385 + 'label' => esc_html__( 'Layout Grid Style', 'shopbuilder' ),
386 + 'options' => [
387 + 'even' => esc_html__( 'Default', 'shopbuilder' ),
388 + 'masonry' => esc_html__( 'Masonry', 'shopbuilder' ),
389 + 'equal' => esc_html__( 'Equal Height', 'shopbuilder' ),
390 + ],
391 + 'label_block' => true,
392 + 'default' => 'even',
393 + 'description' => esc_html__( 'Please select the layout grid style.', 'shopbuilder' ),
394 + 'classes' => $obj->pro_class(),
395 + ];
396 +
379 397 $fields['image_width'] = [
380 398 'type' => 'slider',
381 399 'mode' => 'responsive',
382 400 'label' => esc_html__( 'Image Width', 'shopbuilder' ),
@@ -392,11 +410,11 @@
392 410 'unit' => '%',
393 411 'size' => 32,
394 412 ],
395 413 'description' => esc_html__( 'Please select the image width in %.', 'shopbuilder' ),
414 + 'separator' => rtsb()->has_pro() ? 'default' : 'before',
396 415 'selectors' => [
397 416 $obj->selectors['columns']['image_width']['image'] => 'flex-basis: {{SIZE}}{{UNIT}}; max-width: {{SIZE}}{{UNIT}};',
398 - // $obj->selectors['columns']['image_width']['content'] => 'flex-basis: calc(100% - {{SIZE}}{{UNIT}}); max-width: calc(100% - {{SIZE}}{{UNIT}});',
399 417 ],
400 418 'condition' => [ 'layout' => [ 'list-layout1', 'list-layout2', 'list-layout3', 'list-layout4','list-layout5','list-layout6','list-layout7' ] ],
401 419 ];
402 420
@@ -441,25 +459,8 @@
441 459 ],
442 460 'condition' => [ 'layout' => [ 'list-layout3' ] ],
443 461 ];
444 462
445 - // Todo: Need to add later.
446 - /*
447 - $fields['grid_style'] = [
448 - 'type' => 'select2',
449 - 'label' => esc_html__( 'Grid Style', 'shopbuilder' ),
450 - 'options' => [
451 - 'even' => esc_html__( 'Even', 'shopbuilder' ),
452 - 'masonry' => esc_html__( 'Masonry', 'shopbuilder' ),
453 - 'equal' => esc_html__( 'Equal Height', 'shopbuilder' ),
454 - ],
455 - 'label_block' => true,
456 - 'default' => 'even',
457 - 'description' => esc_html__( 'Please select the grid style.', 'shopbuilder' ),
458 - 'classes' => $obj->pro_class(),
459 - ];
460 - */
461 -
462 463 return apply_filters( 'rtsb/elements/elementor/columns_control', $fields, $obj );
463 464 }
464 465
465 466 /**
@@ -516,8 +517,19 @@
516 517 'required' => true,
517 518 'classes' => $obj->pro_class(),
518 519 ];
519 520
521 + $fields['grid_style'] = [
522 + 'type' => 'select',
523 + 'label' => esc_html__( 'Layout Grid Style', 'shopbuilder' ),
524 + 'options' => [
525 + 'even' => esc_html__( 'Default', 'shopbuilder' ),
526 + ],
527 + 'label_block' => true,
528 + 'default' => 'even',
529 + 'description' => esc_html__( 'Please select the layout grid style.', 'shopbuilder' ),
530 + ];
531 +
520 532 $fields['image_width'] = [
521 533 'type' => 'slider',
522 534 'mode' => 'responsive',
523 535 'label' => esc_html__( 'Image Width', 'shopbuilder' ),
@@ -535,9 +547,8 @@
535 547 ],
536 548 'description' => esc_html__( 'Please select the image width in %.', 'shopbuilder' ),
537 549 'selectors' => [
538 550 $obj->selectors['columns']['image_width']['image'] => 'flex-basis: {{SIZE}}{{UNIT}}; max-width: {{SIZE}}{{UNIT}} !important;',
539 - // $obj->selectors['columns']['image_width']['content'] => 'flex-basis: calc(100% - {{SIZE}}{{UNIT}}); max-width: calc(100% - {{SIZE}}{{UNIT}});',
540 551 ],
541 552 'condition' => [ 'layout' => [ 'slider-layout5' ] ],
542 553 ];
543 554
@@ -627,9 +638,9 @@
627 638 'label_block' => true,
628 639 'minimum_input_length' => 1,
629 640 ];
630 641
631 - $fields['filter_tags'] = [
642 + $fields['filter_tags'] = [
632 643 'type' => 'rt-select2',
633 644 'label' => esc_html__( 'Filter By Tags', 'shopbuilder' ),
634 645 'description' => esc_html__( 'Select the tags you want to filter, Leave it blank for all tags.', 'shopbuilder' ),
635 646 'source_name' => 'taxonomy',
@@ -637,8 +648,18 @@
637 648 'multiple' => true,
638 649 'label_block' => true,
639 650 'minimum_input_length' => 1,
640 651 ];
652 + $fields['filter_brands'] = [
653 + 'type' => 'rt-select2',
654 + 'label' => esc_html__( 'Filter By Brand', 'shopbuilder' ),
655 + 'description' => esc_html__( 'Select the tags you want to filter, Leave it blank for all brands.', 'shopbuilder' ),
656 + 'source_name' => 'taxonomy',
657 + 'source_type' => 'product_brand',
658 + 'multiple' => true,
659 + 'label_block' => true,
660 + 'minimum_input_length' => 1,
661 + ];
641 662
642 663 $fields['filter_attributes'] = [
643 664 'type' => 'select2',
644 665 'label' => esc_html__( 'Filter By Attributes', 'shopbuilder' ),
@@ -645,9 +666,8 @@
645 666 'description' => esc_html__( 'Select the attributes you want to filter, Leave it blank for all attributes.', 'shopbuilder' ),
646 667 'options' => Fns::get_all_attributes(),
647 668 'multiple' => true,
648 669 'label_block' => true,
649 - 'condition' => [ 'tax_filter!' => [ 'yes' ] ],
650 670 ];
651 671
652 672 $fields['tax_relation'] = [
653 673 'type' => 'select2',
@@ -656,9 +676,8 @@
656 676 'OR' => 'Show All Products (OR)',
657 677 'AND' => 'Show Common Products (AND)',
658 678 ],
659 679 'default' => 'AND',
660 - 'description' => esc_html__( 'Select the taxonomies relationship. It is applicable if you select more than one taxonomy.', 'shopbuilder' ),
661 680 'label_block' => true,
662 681 ];
663 682
664 683 $fields['advanced_note'] = $obj->el_heading( esc_html__( 'Advanced Filters', 'shopbuilder' ), 'before' );
@@ -765,8 +784,10 @@
765 784 *
766 785 * @return array
767 786 */
768 787 public static function cat_single_query( $obj ) {
788 + $all_tag_list = Fns::get_tax_list();
789 + unset( $all_tag_list['product_attr'] );
769 790 $fields['query_section'] = $obj->start_section(
770 791 esc_html__( 'Query', 'shopbuilder' ),
771 792 self::$tab
772 793 );
@@ -773,9 +794,9 @@
773 794
774 795 $fields['select_source'] = [
775 796 'type' => 'select2',
776 797 'label' => esc_html__( 'Select Taxonomy', 'shopbuilder' ),
777 - 'options' => Fns::get_tax_list(),
798 + 'options' => $all_tag_list,
778 799 'description' => esc_html__( 'Please select the taxonomy.', 'shopbuilder' ),
779 800 'label_block' => true,
780 801 'default' => 'product_cat',
781 802 ];
@@ -792,9 +813,9 @@
792 813 'select_source' => [ 'product_cat' ],
793 814 ],
794 815 ];
795 816
796 - $fields['select_tag'] = [
817 + $fields['select_tag'] = [
797 818 'type' => 'rt-select2',
798 819 'label' => esc_html__( 'Choose Tag', 'shopbuilder' ),
799 820 'source_name' => 'taxonomy',
800 821 'source_type' => 'product_tag',
@@ -802,8 +823,20 @@
802 823 'label_block' => true,
803 824 'minimum_input_length' => 1,
804 825 'condition' => [
805 826 'select_source' => [ 'product_tag' ],
827 + ],
828 + ];
829 + $fields['select_brand'] = [
830 + 'type' => 'rt-select2',
831 + 'label' => esc_html__( 'Choose Brand', 'shopbuilder' ),
832 + 'source_name' => 'taxonomy',
833 + 'source_type' => 'product_brand',
834 + 'description' => esc_html__( 'Please select the brand to show.', 'shopbuilder' ),
835 + 'label_block' => true,
836 + 'minimum_input_length' => 1,
837 + 'condition' => [
838 + 'select_source' => [ 'product_brand' ],
806 839 ],
807 840 ];
808 841
809 842 $fields['query_section_end'] = $obj->end_section();