1275 lines
35 KiB
PHP
1275 lines
35 KiB
PHP
<?php
|
|
/**
|
|
* Class: Jet_Woo_Taxonomy_Tiles
|
|
* Name: Taxonomy Tiles
|
|
* Slug: jet-woo-taxonomy-tiles
|
|
*/
|
|
|
|
namespace Elementor;
|
|
|
|
use Elementor\Controls_Manager;
|
|
use Elementor\Group_Control_Border;
|
|
use Elementor\Group_Control_Box_Shadow;
|
|
use Elementor\Group_Control_Typography;
|
|
use Elementor\Scheme_Color;
|
|
use Elementor\Scheme_Typography;
|
|
use Elementor\Widget_Base;
|
|
use Elementor\Utils;
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
} // Exit if accessed directly
|
|
|
|
class Jet_Woo_Taxonomy_Tiles extends Jet_Woo_Builder_Base {
|
|
public $__current_tax_count = 0;
|
|
|
|
public function get_name() {
|
|
return 'jet-woo-taxonomy-tiles';
|
|
}
|
|
|
|
public function get_title() {
|
|
return esc_html__( 'Taxonomy Tiles', 'jet-woo-builder' );
|
|
}
|
|
|
|
public function get_icon() {
|
|
return 'jetwoobuilder-icon-18';
|
|
}
|
|
|
|
public function get_jet_help_url() {
|
|
return 'https://crocoblock.com/knowledge-base/articles/jetwoobuilder-taxonomy-tiles-widget-overview/';
|
|
}
|
|
|
|
public function get_categories() {
|
|
return array( 'jet-woo-builder' );
|
|
}
|
|
|
|
protected function _register_controls() {
|
|
|
|
$css_scheme = apply_filters(
|
|
'jet-woo-builder/taxonomy-tiles/css-scheme',
|
|
array(
|
|
'wrap' => '.jet-woo-taxonomy-tiles',
|
|
'box' => '.jet-woo-taxonomy-item__box',
|
|
'box-inner' => '.jet-woo-taxonomy-item__box-inner',
|
|
'title' => '.jet-woo-taxonomy-item__box-title',
|
|
'count' => '.jet-woo-taxonomy-item__box-count',
|
|
'desc' => '.jet-woo-taxonomy-item__box-description',
|
|
'terms_link' => '.jet-woo-taxonomy-item__box-link',
|
|
)
|
|
);
|
|
|
|
$this->start_controls_section(
|
|
'section_general_style',
|
|
array(
|
|
'label' => esc_html__( 'General', 'jet-woo-builder' ),
|
|
)
|
|
);
|
|
|
|
$this->controls_section_general( $css_scheme );
|
|
|
|
$this->end_controls_section();
|
|
|
|
$this->start_controls_section(
|
|
'section_box_style',
|
|
array(
|
|
'label' => esc_html__( 'Box', 'jet-woo-builder' ),
|
|
'tab' => Controls_Manager::TAB_STYLE,
|
|
'show_label' => false,
|
|
)
|
|
);
|
|
|
|
$this->controls_section_box( $css_scheme );
|
|
|
|
$this->end_controls_section();
|
|
|
|
$this->start_controls_section(
|
|
'section_box_hover_style',
|
|
array(
|
|
'label' => esc_html__( 'Box (Hover)', 'jet-woo-builder' ),
|
|
'tab' => Controls_Manager::TAB_STYLE,
|
|
'show_label' => false,
|
|
)
|
|
);
|
|
|
|
$this->controls_section_box_hover( $css_scheme );
|
|
|
|
$this->end_controls_section();
|
|
|
|
$this->start_controls_section(
|
|
'section_content_style',
|
|
array(
|
|
'label' => esc_html__( 'Content', 'jet-woo-builder' ),
|
|
'tab' => Controls_Manager::TAB_STYLE,
|
|
'show_label' => false,
|
|
)
|
|
);
|
|
|
|
$this->controls_section_content( $css_scheme );
|
|
|
|
$this->end_controls_section();
|
|
|
|
}
|
|
|
|
protected function render() {
|
|
$this->__context = 'render';
|
|
$query = $this->__taxonomy_query();
|
|
|
|
if ( empty( $query ) || is_wp_error( $query ) ) {
|
|
echo sprintf( '<h3 class="jet-woo-taxonomy__not-found">%s</h3>', esc_html__( 'Taxonomy not found', 'jet-woo-builder' ) );
|
|
|
|
return false;
|
|
}
|
|
|
|
$this->__open_wrap();
|
|
|
|
?>
|
|
<div class="<?php $this->__get_tax_wrap_classes(); ?>" dir="ltr">
|
|
<?php
|
|
foreach ( $query as $taxonomy ) {
|
|
setup_postdata( $taxonomy );
|
|
include $this->__get_global_template( 'index' );
|
|
}
|
|
wp_reset_postdata();
|
|
?>
|
|
</div>
|
|
<?php
|
|
|
|
$this->__close_wrap();
|
|
|
|
}
|
|
|
|
/**
|
|
* Add classes for taxonomy wrapper
|
|
*/
|
|
public function __get_tax_wrap_classes() {
|
|
$settings = $this->get_settings();
|
|
|
|
$classes = array(
|
|
'jet-woo-taxonomy-tiles',
|
|
'jet-woo-taxonomy-tiles--layout-' . $settings['layout'],
|
|
'jet-woo-taxonomy-tiles-count--' . $settings['count_displaying']
|
|
);
|
|
|
|
if ( 'out-of-content' === $settings['count_displaying'] ) {
|
|
$classes[] = 'jet-woo-taxonomy-tiles-count--' . $settings['boxes_count_position'];
|
|
}
|
|
|
|
if ( $this->is_multirow_layout( $settings['layout'] ) ) {
|
|
$rows = isset( $settings['rows_num'] ) ? absint( $settings['rows_num'] ) : 1;
|
|
$classes[] = 'rows-' . $rows;
|
|
}
|
|
|
|
echo implode( ' ', $classes );
|
|
}
|
|
|
|
/**
|
|
* Return taxonomy count to display for current layout
|
|
*
|
|
* @param $settings
|
|
*
|
|
* @return float|int
|
|
*/
|
|
public function __get_tax_count( $settings ) {
|
|
|
|
if ( 0 === $this->__current_tax_count ) {
|
|
|
|
$layout = $settings['layout'];
|
|
$layouts_data = $this->__layout_data();
|
|
$current_layout = isset( $layouts_data[ $layout ] ) ? $layouts_data[ $layout ] : false;
|
|
|
|
if ( ! $current_layout ) {
|
|
return $this->__current_tax_count;
|
|
}
|
|
|
|
$this->__current_tax_count = $current_layout['num'];
|
|
|
|
if ( $this->is_multirow_layout( $layout ) ) {
|
|
$rows = isset( $settings['rows_num'] ) ? absint( $settings['rows_num'] ) : 1;
|
|
$this->__current_tax_count = $this->__current_tax_count * $rows;
|
|
}
|
|
|
|
}
|
|
|
|
return $this->__current_tax_count;
|
|
|
|
}
|
|
|
|
/**
|
|
* Query taxonomy by attributes
|
|
*
|
|
* @return object
|
|
*/
|
|
public function __taxonomy_query() {
|
|
|
|
$settings = $this->get_settings();
|
|
$num = $this->__get_tax_count( $settings );
|
|
|
|
$defaults = apply_filters(
|
|
'jet-woo-builder/jet-woo-taxonomy-tiles/query-args',
|
|
array(
|
|
'post_status' => 'publish',
|
|
'hierarchical' => 1
|
|
)
|
|
);
|
|
|
|
$args = array(
|
|
'number' => $num,
|
|
'orderby' => $settings['sort_by'],
|
|
'hide_empty' => $settings['hide_empty'],
|
|
'order' => $settings['order'],
|
|
);
|
|
|
|
$exclude_tax = explode( ',', $settings['exclude_taxonomy_id'] );
|
|
|
|
if ( $settings['show_taxonomy_by_id'] ) {
|
|
$args['include'] = $settings['taxonomy_id'];
|
|
}
|
|
|
|
if ( 'product_cat' === $settings['taxonomy'] && $settings['hide_default_cat'] ) {
|
|
array_push( $exclude_tax, get_option( 'default_product_cat', 0 ) );
|
|
}
|
|
|
|
$args['exclude'] = implode( ',', $exclude_tax );
|
|
$args = wp_parse_args( $args, $defaults );
|
|
$taxonomies = get_terms( $settings['taxonomy'], $args );
|
|
|
|
if ( $args['orderby'] === 'rand') {
|
|
$terms_count = count($taxonomies);
|
|
|
|
shuffle( $taxonomies);
|
|
|
|
return array_slice( $taxonomies, 0, $terms_count );
|
|
}
|
|
|
|
return $taxonomies;
|
|
|
|
}
|
|
|
|
/**
|
|
* Get style attribute with taxonomy background.
|
|
*
|
|
* @return void|null
|
|
*/
|
|
public function __get_tax_bg( $taxonomy, $key ) {
|
|
$thumbnail_id = get_term_meta( $taxonomy->term_id, $key, true );
|
|
|
|
if ( $thumbnail_id ) {
|
|
$thumb = wp_get_attachment_url( $thumbnail_id );
|
|
} else {
|
|
$thumb = sprintf( 'http://via.placeholder.com/900x600?text=%s', str_replace( ' ', '+', $taxonomy->name ) );
|
|
}
|
|
|
|
printf( 'style="background-image:url(\'%s\')"', $thumb );
|
|
|
|
}
|
|
|
|
/**
|
|
* Check if current layout is multirow layout
|
|
*
|
|
* @param string $layout Layout name.
|
|
*
|
|
* @return boolean
|
|
*/
|
|
public function is_multirow_layout( $layout ) {
|
|
$multirow_layouts = apply_filters( 'jet-woo-builder/taxonomy-tiles/multirow-layouts', array(
|
|
'2-x',
|
|
'3-x',
|
|
'4-x'
|
|
) );
|
|
|
|
return in_array( $layout, $multirow_layouts );
|
|
}
|
|
|
|
/**
|
|
* Returns information about available layouts
|
|
*
|
|
* @return array
|
|
*/
|
|
public function __layout_data() {
|
|
|
|
return apply_filters( 'jet-woo-builder/taxonomy-tiles/available-layouts', array(
|
|
'2-1-2' => array(
|
|
'label' => esc_html__( 'Layout 1 (5 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-1',
|
|
'num' => 5,
|
|
'has_rows' => false,
|
|
),
|
|
'1-1-2-h' => array(
|
|
'label' => esc_html__( 'Layout 2 (4 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-2',
|
|
'num' => 4,
|
|
'has_rows' => false,
|
|
),
|
|
'1-1-2-v' => array(
|
|
'label' => esc_html__( 'Layout 3 (4 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-3',
|
|
'num' => 4,
|
|
'has_rows' => false,
|
|
),
|
|
'1-2' => array(
|
|
'label' => esc_html__( 'Layout 4 (3 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-4',
|
|
'num' => 3,
|
|
'has_rows' => false,
|
|
),
|
|
'2-3-v' => array(
|
|
'label' => esc_html__( 'Layout 5 (5 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-5',
|
|
'num' => 5,
|
|
'has_rows' => false,
|
|
),
|
|
'1-2-2' => array(
|
|
'label' => esc_html__( 'Layout 6 (5 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-6',
|
|
'num' => 5,
|
|
'has_rows' => false,
|
|
),
|
|
'2-x' => array(
|
|
'label' => esc_html__( 'Layout 7 (2, 4, 6 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-7',
|
|
'num' => 2,
|
|
'has_rows' => false,
|
|
),
|
|
'3-x' => array(
|
|
'label' => esc_html__( 'Layout 8 (3, 6, 9 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-8',
|
|
'num' => 3,
|
|
'has_rows' => false,
|
|
),
|
|
'4-x' => array(
|
|
'label' => esc_html__( 'Layout 9 (4, 8, 12 taxonomy)', 'jet-woo-builder' ),
|
|
'icon' => 'jet-woo-builder-icon jet-woo-taxonomy-tiles-layout-9',
|
|
'num' => 4,
|
|
'has_rows' => false,
|
|
),
|
|
|
|
) );
|
|
|
|
}
|
|
|
|
protected function controls_section_general( $css_scheme ) {
|
|
$layout_data = $this->__layout_data();
|
|
$available_layouts = array();
|
|
|
|
foreach ( $layout_data as $key => $data ) {
|
|
$available_layouts[ $key ] = array(
|
|
'title' => $data['label'],
|
|
'icon' => $data['icon'],
|
|
);
|
|
}
|
|
|
|
$this->add_control(
|
|
'layout',
|
|
array(
|
|
'label' => esc_html__( 'Layout', 'jet-woo-builder' ),
|
|
'label_block' => true,
|
|
'type' => Controls_Manager::CHOOSE,
|
|
'default' => '2-1-2',
|
|
'options' => $available_layouts,
|
|
'render_type' => 'template',
|
|
'classes' => 'jet-woo-builder-layout-control',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'count_displaying',
|
|
array(
|
|
'label' => esc_html__( 'Show Count', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'in-content',
|
|
'options' => array(
|
|
'in-content' => esc_html__( 'In content', 'jet-woo-builder' ),
|
|
'out-of-content' => esc_html__( 'Out of content', 'jet-woo-builder' ),
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'title_html_tag',
|
|
array(
|
|
'label' => esc_html__( 'Title HTML Tag', 'jet-cw' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'h5',
|
|
'options' => jet_woo_builder_tools()->get_available_title_html_tags(),
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'taxonomy_min_height',
|
|
array(
|
|
'label' => esc_html__( 'Min Height', 'jet-woo-builder' ),
|
|
'label_block' => true,
|
|
'type' => Controls_Manager::SLIDER,
|
|
'size_units' => array( 'px' ),
|
|
'default' => array(
|
|
'unit' => 'px',
|
|
'size' => 300,
|
|
),
|
|
'range' => array(
|
|
'px' => array(
|
|
'min' => 0,
|
|
'max' => 1200,
|
|
),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['wrap'] => 'min-height: {{SIZE}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$main_img_selectors = apply_filters( 'jet-woo-builder/taxonomy-tiles/main-image-selectors', array(
|
|
'{{WRAPPER}} .jet-woo-taxonomy-tiles--layout-2-1-2' => 'grid-template-columns: 1fr {{SIZE}}{{UNIT}} 1fr; -ms-grid-columns: 1fr {{SIZE}}{{UNIT}} 1fr;',
|
|
'{{WRAPPER}} .jet-woo-taxonomy-tiles--layout-1-1-2-h' => 'grid-template-columns: {{SIZE}}{{UNIT}} 1fr 1fr; -ms-grid-columns: {{SIZE}}{{UNIT}} 1fr 1fr;',
|
|
'{{WRAPPER}} .jet-woo-taxonomy-tiles--layout-1-1-2-v' => 'grid-template-columns: {{SIZE}}{{UNIT}} 1fr 1fr; -ms-grid-columns: {{SIZE}}{{UNIT}} 1fr 1fr;',
|
|
'{{WRAPPER}} .jet-woo-taxonomy-tiles--layout-1-2' => 'grid-template-columns: {{SIZE}}{{UNIT}} 1fr; -ms-grid-columns: {{SIZE}}{{UNIT}} 1fr',
|
|
'{{WRAPPER}} .jet-woo-taxonomy-tiles--layout-1-2-2' => 'grid-template-columns: {{SIZE}}{{UNIT}} 1fr 1fr; -ms-grid-columns: {{SIZE}}{{UNIT}} 1fr 1fr;',
|
|
) );
|
|
|
|
$main_img_conditions = apply_filters( 'jet-woo-builder/taxonomy-tiles/main-image-conditions', array(
|
|
'2-1-2',
|
|
'1-1-2-h',
|
|
'1-1-2-v',
|
|
'1-2',
|
|
'1-2-2',
|
|
) );
|
|
|
|
$this->add_control(
|
|
'main_img_width',
|
|
array(
|
|
'label' => esc_html__( 'Main Box Width', 'jet-woo-builder' ),
|
|
'label_block' => true,
|
|
'type' => Controls_Manager::SLIDER,
|
|
'size_units' => array( '%' ),
|
|
'default' => array(
|
|
'unit' => '%',
|
|
'size' => 50,
|
|
),
|
|
'range' => array(
|
|
'%' => array(
|
|
'min' => 0,
|
|
'max' => 100,
|
|
),
|
|
),
|
|
'selectors' => $main_img_selectors,
|
|
'condition' => array(
|
|
'layout' => $main_img_conditions,
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'rows_num',
|
|
array(
|
|
'label' => esc_html__( 'Rows Number', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 1,
|
|
'options' => jet_woo_builder_tools()->get_select_range( 3 ),
|
|
'condition' => array(
|
|
'layout' => array( '2-x', '3-x', '4-x' ),
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'taxonomy',
|
|
array(
|
|
'type' => 'select',
|
|
'label' => esc_html__( 'Show:', 'jet-woo-builder' ),
|
|
'default' => 'product_cat',
|
|
'options' => apply_filters( 'jet-woo-builder/jet-woo-taxonomy-tiles/taxonomy_options', array(
|
|
'product_tag' => esc_html__( 'Tags', 'jet-woo-builder' ),
|
|
'product_cat' => esc_html__( 'Categories', 'jet-woo-builder' ),
|
|
) ),
|
|
'separator' => 'before'
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'hide_empty',
|
|
array(
|
|
'type' => 'switcher',
|
|
'label' => esc_html__( 'Hide Empty', 'jet-woo-builder' ),
|
|
'label_on' => esc_html__( 'Yes', 'jet-woo-builder' ),
|
|
'label_off' => esc_html__( 'No', 'jet-woo-builder' ),
|
|
'return_value' => 'yes',
|
|
'default' => '',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'hide_default_cat',
|
|
array(
|
|
'type' => 'switcher',
|
|
'label' => esc_html__( 'Hide Uncategorized', 'jet-woo-builder' ),
|
|
'label_on' => esc_html__( 'Yes', 'jet-woo-builder' ),
|
|
'label_off' => esc_html__( 'No', 'jet-woo-builder' ),
|
|
'return_value' => 'yes',
|
|
'default' => '',
|
|
'condition' => array(
|
|
'taxonomy' => array( 'product_cat' )
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'show_taxonomy_by_id',
|
|
array(
|
|
'type' => 'switcher',
|
|
'label' => esc_html__( 'Show by IDs', 'jet-woo-builder' ),
|
|
'label_on' => esc_html__( 'Yes', 'jet-woo-builder' ),
|
|
'label_off' => esc_html__( 'No', 'jet-woo-builder' ),
|
|
'return_value' => 'yes',
|
|
'default' => 'false'
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'taxonomy_id',
|
|
array(
|
|
'type' => 'text',
|
|
'label_block' => true,
|
|
'label' => esc_html__( 'Set comma separated IDs list (10, 22, 19 etc.)', 'jet-woo-builder' ),
|
|
'default' => '',
|
|
'condition' => array(
|
|
'show_taxonomy_by_id' => 'yes',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'exclude_taxonomy_id',
|
|
array(
|
|
'type' => 'text',
|
|
'label_block' => true,
|
|
'label' => esc_html__( 'Exclude taxonomy by IDs (eg. 10, 22, 19 etc.)', 'jet-woo-builder' ),
|
|
'default' => '',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'sort_by',
|
|
array(
|
|
'type' => 'select',
|
|
'label' => esc_html__( 'Order by', 'jet-woo-builder' ),
|
|
'default' => 'name',
|
|
'options' => array(
|
|
'name' => esc_html__( 'Name', 'jet-woo-builder' ),
|
|
'id' => esc_html__( 'IDs', 'jet-woo-builder' ),
|
|
'count' => esc_html__( 'Count', 'jet-woo-builder' ),
|
|
'rand' => esc_html__( 'Random', 'jet-woo-builder' ),
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'order',
|
|
array(
|
|
'type' => 'select',
|
|
'label' => esc_html__( 'Order', 'jet-woo-builder' ),
|
|
'default' => 'asc',
|
|
'options' => array(
|
|
'asc' => esc_html__( 'ASC', 'jet-woo-builder' ),
|
|
'desc' => esc_html__( 'DESC', 'jet-woo-builder' ),
|
|
),
|
|
'condition' => array(
|
|
'sort_by!' => 'rand',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'show_taxonomy_count',
|
|
array(
|
|
'type' => 'switcher',
|
|
'label' => esc_html__( 'Show Counts', 'jet-woo-builder' ),
|
|
'label_on' => esc_html__( 'Yes', 'jet-woo-builder' ),
|
|
'label_off' => esc_html__( 'No', 'jet-woo-builder' ),
|
|
'return_value' => 'yes',
|
|
'default' => 'yes',
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'title_length',
|
|
array(
|
|
'label' => esc_html__( 'Title Max Length (Words)', 'jet-woo-builder' ),
|
|
'description' => esc_html__( 'Set 0 to show full title', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::NUMBER,
|
|
'default' => 5,
|
|
'min' => - 1,
|
|
'max' => 15,
|
|
'step' => 1,
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'desc_length',
|
|
array(
|
|
'label' => esc_html__( 'Description Length', 'jet-woo-builder' ),
|
|
'description' => esc_html__( 'Set 0 to hide description', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::NUMBER,
|
|
'default' => 50,
|
|
'min' => - 1,
|
|
'max' => 200,
|
|
'step' => 1,
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'count_before_text',
|
|
array(
|
|
'type' => 'text',
|
|
'label' => esc_html__( 'Count Before Text', 'jet-woo-builder' ),
|
|
'default' => ! is_rtl() ? '(' : ')',
|
|
'condition' => array(
|
|
'show_taxonomy_count' => array( 'yes' ),
|
|
)
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'count_after_text',
|
|
array(
|
|
'type' => 'text',
|
|
'label' => esc_html__( 'Count After Text', 'jet-woo-builder' ),
|
|
'default' => ! is_rtl() ? ')' : '(',
|
|
'condition' => array(
|
|
'show_taxonomy_count' => array( 'yes' ),
|
|
),
|
|
)
|
|
);
|
|
|
|
}
|
|
|
|
protected function controls_section_box( $css_scheme ) {
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_gap',
|
|
array(
|
|
'label' => esc_html__( 'Gap Between Boxes', 'jet-woo-builder' ),
|
|
'label_block' => true,
|
|
'type' => Controls_Manager::SLIDER,
|
|
'size_units' => array( 'px' ),
|
|
'default' => array(
|
|
'unit' => 'px',
|
|
'size' => 1,
|
|
),
|
|
'range' => array(
|
|
'px' => array(
|
|
'min' => 0,
|
|
'max' => 60,
|
|
),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['wrap'] => 'grid-column-gap: {{SIZE}}{{UNIT}}; grid-row-gap: {{SIZE}}{{UNIT}};',
|
|
'(mobile){{WRAPPER}} ' . $css_scheme['box'] => 'margin-bottom: {{SIZE}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Border::get_type(),
|
|
array(
|
|
'name' => 'boxes_border',
|
|
'label' => esc_html__( 'Border', 'jet-woo-builder' ),
|
|
'placeholder' => '1px',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box'],
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_border_radius',
|
|
array(
|
|
'label' => esc_html__( 'Border Radius', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Box_Shadow::get_type(),
|
|
array(
|
|
'name' => 'boxes_box_shadow',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box'],
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_text_alignment_h',
|
|
array(
|
|
'label' => esc_html__( 'Horizontal Alignment', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'left',
|
|
'options' => array(
|
|
'left' => esc_html__( 'Left', 'jet-woo-builder' ),
|
|
'center' => esc_html__( 'Center', 'jet-woo-builder' ),
|
|
'right' => esc_html__( 'Right', 'jet-woo-builder' ),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] => 'text-align: {{VALUE}};',
|
|
),
|
|
'separator' => 'before'
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_text_alignment_v',
|
|
array(
|
|
'label' => esc_html__( 'Vertical Alignment', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'flex-start',
|
|
'options' => array(
|
|
'flex-start' => esc_html__( 'Top', 'jet-woo-builder' ),
|
|
'center' => esc_html__( 'Center', 'jet-woo-builder' ),
|
|
'flex-end' => esc_html__( 'Bottom', 'jet-woo-builder' ),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] => 'align-items: {{VALUE}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_padding',
|
|
array(
|
|
'label' => esc_html__( 'Padding', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%', 'em' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_overlay_styles',
|
|
array(
|
|
'label' => esc_html__( 'Box Overlay', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->start_controls_tabs( 'tabs_overlay_style' );
|
|
|
|
$this->start_controls_tab(
|
|
'tab_overlay_normal',
|
|
array(
|
|
'label' => esc_html__( 'Normal', 'jet-woo-builder' ),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Background::get_type(),
|
|
array(
|
|
'name' => 'boxes_overlay_background_normal',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box'] . ':before',
|
|
)
|
|
);
|
|
|
|
$this->end_controls_tab();
|
|
|
|
$this->start_controls_tab(
|
|
'tab_overlay_hover',
|
|
array(
|
|
'label' => esc_html__( 'Hover', 'jet-woo-builder' ),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Background::get_type(),
|
|
array(
|
|
'name' => 'boxes_overlay_background_hover',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box'] . ':hover:before',
|
|
)
|
|
);
|
|
|
|
$this->end_controls_tab();
|
|
|
|
$this->end_controls_tabs();
|
|
|
|
}
|
|
|
|
protected function controls_section_box_hover( $css_scheme ) {
|
|
$this->add_control(
|
|
'box_hover_content_styles',
|
|
array(
|
|
'label' => esc_html__( 'Content', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'box_hover_content_bg',
|
|
array(
|
|
'label' => esc_html__( 'Background Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-inner' => 'background-color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'box_hover_title_styles',
|
|
array(
|
|
'label' => esc_html__( 'Title', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_hover_title_color',
|
|
array(
|
|
'label' => esc_html__( 'Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-title' => 'color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_hover_title_decoration',
|
|
array(
|
|
'label' => esc_html__( 'Text Decoration', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'none',
|
|
'options' => array(
|
|
'none' => esc_html__( 'None', 'jet-woo-builder' ),
|
|
'line-through' => esc_html__( 'Line Through', 'jet-woo-builder' ),
|
|
'underline' => esc_html__( 'Underline', 'jet-woo-builder' ),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-title' => 'text-decoration: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'box_hover_desc_styles',
|
|
array(
|
|
'label' => esc_html__( 'Description ', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_hover_desc_color',
|
|
array(
|
|
'label' => esc_html__( 'Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-description' => 'color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_hover_desc_decoration',
|
|
array(
|
|
'label' => esc_html__( 'Text Decoration', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'none',
|
|
'options' => array(
|
|
'none' => esc_html__( 'None', 'jet-woo-builder' ),
|
|
'line-through' => esc_html__( 'Line Through', 'jet-woo-builder' ),
|
|
'underline' => esc_html__( 'Underline', 'jet-woo-builder' ),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-description' => 'text-decoration: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'box_hover_count_styles',
|
|
array(
|
|
'label' => esc_html__( 'Count', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_hover_count_color',
|
|
array(
|
|
'label' => esc_html__( 'Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-count' => 'color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'box_hover_count_bg',
|
|
array(
|
|
'label' => esc_html__( 'Background Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-count' => 'background-color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'box_hover_count_decoration',
|
|
array(
|
|
'label' => esc_html__( 'Text Decoration', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'default' => 'none',
|
|
'options' => array(
|
|
'none' => esc_html__( 'None', 'jet-woo-builder' ),
|
|
'line-through' => esc_html__( 'Line Through', 'jet-woo-builder' ),
|
|
'underline' => esc_html__( 'Underline', 'jet-woo-builder' ),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-count' => 'text-decoration: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'item_box_hover_shadow',
|
|
array(
|
|
'label' => esc_html__( 'Item', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Box_Shadow::get_type(),
|
|
array(
|
|
'name' => 'boxes_hover_shadow',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box'] . ':hover',
|
|
)
|
|
);
|
|
|
|
}
|
|
|
|
protected function controls_section_content( $css_scheme ) {
|
|
$this->add_control(
|
|
'content_background',
|
|
array(
|
|
'label' => esc_html__( 'Background', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box-inner'] => 'background-color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Border::get_type(),
|
|
array(
|
|
'name' => 'content_border',
|
|
'label' => esc_html__( 'Border', 'jet-woo-builder' ),
|
|
'placeholder' => '1px',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box-inner'],
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'content_hover_border_color',
|
|
array(
|
|
'label' => esc_html__( 'Hover Border Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-inner' => 'border-color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'content_border_radius',
|
|
array(
|
|
'label' => esc_html__( 'Border Radius', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box-inner'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Box_Shadow::get_type(),
|
|
array(
|
|
'name' => 'content_box_shadow',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['box-inner'],
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'content_margin',
|
|
array(
|
|
'label' => esc_html__( 'Padding', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%', 'em' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box-inner'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_title_styles',
|
|
array(
|
|
'label' => esc_html__( 'Title', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_title_color',
|
|
array(
|
|
'label' => esc_html__( 'Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['title'] => 'color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Typography::get_type(),
|
|
array(
|
|
'name' => 'boxes_title_typography',
|
|
'scheme' => Scheme_Typography::TYPOGRAPHY_2,
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['title'],
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_title_margin',
|
|
array(
|
|
'label' => esc_html__( 'Margin', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%', 'em' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['title'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_count_styles',
|
|
array(
|
|
'label' => esc_html__( 'Products Count', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_count_position',
|
|
array(
|
|
'label' => esc_html__( 'Count Position', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'options' => array(
|
|
'top-left' => esc_html__( 'Top Left', 'jet-woo-builder' ),
|
|
'top-right' => esc_html__( 'Top Right', 'jet-woo-builder' ),
|
|
'bottom-left' => esc_html__( 'Bottom Left', 'jet-woo-builder' ),
|
|
'bottom-right' => esc_html__( 'Bottom Right', 'jet-woo-builder' ),
|
|
),
|
|
'default' => 'top-right',
|
|
'condition' => array(
|
|
'count_displaying' => array( 'out-of-content' )
|
|
)
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_count_display',
|
|
array(
|
|
'label' => esc_html__( 'Count Display', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SELECT,
|
|
'options' => array(
|
|
'inline' => esc_html__( 'Inline', 'jet-woo-builder' ),
|
|
'block' => esc_html__( 'Block', 'jet-woo-builder' ),
|
|
),
|
|
'default' => 'inline',
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'display: {{VALUE}}',
|
|
'{{WRAPPER}} ' . $css_scheme['title'] => 'display: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_count_min_width',
|
|
array(
|
|
'label' => esc_html__( 'Count Minimal Width (px)', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::SLIDER,
|
|
'size_units' => array(
|
|
'px',
|
|
),
|
|
'range' => array(
|
|
'px' => array(
|
|
'min' => 0,
|
|
'max' => 100,
|
|
),
|
|
),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'min-width: {{SIZE}}{{UNIT}}; text-align: center;',
|
|
),
|
|
'condition' => array(
|
|
'count_displaying' => array( 'out-of-content' )
|
|
)
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_count_color',
|
|
array(
|
|
'label' => esc_html__( 'Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_count_bg',
|
|
array(
|
|
'label' => esc_html__( 'Background', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'background-color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Typography::get_type(),
|
|
array(
|
|
'name' => 'boxes_count_typography',
|
|
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['count'],
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Border::get_type(),
|
|
array(
|
|
'name' => 'boxes_count_border',
|
|
'label' => esc_html__( 'Border', 'jet-woo-builder' ),
|
|
'placeholder' => '1px',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['count'],
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_count_hover_border_color',
|
|
array(
|
|
'label' => esc_html__( 'Hover Border Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['box'] . ':hover .jet-woo-taxonomy-item__box-count' => 'border-color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_count_border_radius',
|
|
array(
|
|
'label' => esc_html__( 'Border Radius', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Box_Shadow::get_type(),
|
|
array(
|
|
'name' => 'boxes_count_box_shadow',
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['count'],
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_count_padding',
|
|
array(
|
|
'label' => esc_html__( 'Padding', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%', 'em' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_count_margin',
|
|
array(
|
|
'label' => esc_html__( 'Margin', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%', 'em' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['count'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_text_style',
|
|
array(
|
|
'label' => esc_html__( 'Description', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::HEADING,
|
|
'separator' => 'before',
|
|
)
|
|
);
|
|
|
|
$this->add_control(
|
|
'boxes_text_color',
|
|
array(
|
|
'label' => esc_html__( 'Color', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::COLOR,
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['desc'] => 'color: {{VALUE}}',
|
|
),
|
|
)
|
|
);
|
|
|
|
$this->add_group_control(
|
|
Group_Control_Typography::get_type(),
|
|
array(
|
|
'name' => 'boxes_text_typography',
|
|
'scheme' => Scheme_Typography::TYPOGRAPHY_3,
|
|
'selector' => '{{WRAPPER}} ' . $css_scheme['desc'],
|
|
)
|
|
);
|
|
|
|
$this->add_responsive_control(
|
|
'boxes_text_margin',
|
|
array(
|
|
'label' => esc_html__( 'Margin', 'jet-woo-builder' ),
|
|
'type' => Controls_Manager::DIMENSIONS,
|
|
'size_units' => array( 'px', '%', 'em' ),
|
|
'selectors' => array(
|
|
'{{WRAPPER}} ' . $css_scheme['desc'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
|
),
|
|
)
|
|
);
|
|
|
|
}
|
|
|
|
protected function _content_template() {
|
|
}
|
|
|
|
}
|