upk_is_edit_mode()) { return ['swiper', 'upk-all-styles']; } else { return ['swiper', 'upk-font', 'upk-pholox-slider']; } } public function get_script_depends() { if ($this->upk_is_edit_mode()) { return ['swiper', 'upk-all-scripts']; } else { return ['swiper', 'upk-pholox-slider']; } } public function get_custom_help_url() { return 'https://youtu.be/Et_-wFgOn0M'; } public function get_query() { return $this->_query; } public function has_widget_inner_wrapper(): bool { return ! \Elementor\Plugin::$instance->experiments->is_feature_active( 'e_optimized_markup' ); } protected function register_controls() { $this->start_controls_section( 'section_layout', [ 'label' => esc_html__('Layout', 'ultimate-post-kit'), ] ); $this->add_responsive_control( 'content_max_width', [ 'label' => __('Content Max Width', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 200, 'max' => 800, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content' => 'max-width: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( 'content_position', [ 'label' => __('Content Position', 'ultimate-post-kit'), 'type' => Controls_Manager::CHOOSE, 'default' => 'left', 'options' => [ 'left' => [ 'title' => __('Left', 'ultimate-post-kit'), 'icon' => 'eicon-h-align-left', ], 'right' => [ 'title' => __('Right', 'ultimate-post-kit'), 'icon' => 'eicon-h-align-right', ], ], 'toggle' => false, 'label_block' => false, ] ); $this->add_responsive_control( 'content_alignment', [ 'label' => __('Text Alignment', 'ultimate-post-kit'), 'type' => Controls_Manager::CHOOSE, 'options' => [ 'left' => [ 'title' => __('Left', 'ultimate-post-kit'), 'icon' => 'eicon-text-align-left', ], 'center' => [ 'title' => __('Center', 'ultimate-post-kit'), 'icon' => 'eicon-text-align-center', ], 'right' => [ 'title' => __('Right', 'ultimate-post-kit'), 'icon' => 'eicon-text-align-right', ], ], 'toggle' => true, 'label_block' => false, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content' => 'text-align: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Image_Size::get_type(), [ 'name' => 'primary_thumbnail', 'exclude' => ['custom'], 'default' => 'full', 'separator' => 'after', ] ); //Global Title Controls $this->register_title_controls(); $this->add_control( 'show_category', [ 'label' => esc_html__('Category', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', ] ); $this->add_control( 'show_author', [ 'label' => esc_html__('Author', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', ] ); $this->add_control( 'show_meta', [ 'label' => esc_html__('Meta', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', ] ); $this->add_control( 'meta_separator', [ 'label' => __('Separator', 'ultimate-post-kit'), 'type' => Controls_Manager::TEXT, 'default' => '//', 'label_block' => false, ] ); //Global Date Controls $this->register_date_controls(); //Global Reading Time Controls $this->register_reading_time_controls(); $this->add_control( 'thumb_show_category', [ 'label' => esc_html__('Thumbs Category', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', // 'separator' => 'before', ] ); $this->add_control( 'thumb_show_title', [ 'label' => esc_html__('Thumbs Title', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', ] ); $this->add_control( 'thumb_title_tags', [ 'label' => __('Thumbs Title HTML Tag', 'ultimate-post-kit'), 'type' => Controls_Manager::SELECT, 'default' => 'h3', 'options' => ultimate_post_kit_title_tags(), 'condition' => [ 'thumb_show_title' => 'yes' ] ] ); $this->end_controls_section(); //New Query Builder Settings $this->start_controls_section( 'section_post_query_builder', [ 'label' => __('Query', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'item_limit', [ 'label' => esc_html__('Item Limit', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 20, 'step' => 5 ], ], 'default' => [ 'size' => 5, ], 'condition' => [ 'posts_source!' => 'current_query', ] ] ); $this->register_query_builder_controls(); $this->end_controls_section(); $this->start_controls_section( 'section_carousel_settings', [ 'label' => __('Slider Settings', 'ultimate-post-kit'), ] ); $this->add_control( 'autoplay', [ 'label' => __('Autoplay', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, ] ); $this->add_control( 'autoplay_speed', [ 'label' => esc_html__('Autoplay Speed', 'ultimate-post-kit'), 'type' => Controls_Manager::NUMBER, 'default' => 5000, 'condition' => [ 'autoplay' => 'yes', ], ] ); $this->add_control( 'grab_cursor', [ 'label' => __('Grab Cursor', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, ] ); $this->add_control( 'loop', [ 'label' => __('Loop', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', ] ); $this->add_control( 'speed', [ 'label' => __('Animation Speed (ms)', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'default' => [ 'size' => 500, ], 'range' => [ 'px' => [ 'min' => 100, 'max' => 5000, 'step' => 50, ], ], ] ); $this->add_control( 'observer', [ 'label' => __('Observer', 'ultimate-post-kit'), 'description' => __('When you use carousel in any hidden place (in tabs, accordion etc) keep it yes.', 'ultimate-post-kit'), 'type' => Controls_Manager::SWITCHER, ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_image', [ 'label' => esc_html__('Image', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'main_slider_image_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-img-wrap', ] ); $this->add_responsive_control( 'main_slider_image_border_radius', [ 'label' => esc_html__('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-img-wrap' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_content', [ 'label' => esc_html__('Content', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'content_background', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'content_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content', ] ); $this->add_responsive_control( 'content_border_radius', [ 'label' => esc_html__('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'content_padding', [ 'label' => esc_html__('Padding', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', 'em', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'content_shadow', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-content', ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_play_button', [ 'label' => esc_html__('Play Button', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_responsive_control( 'play_button_size', [ 'label' => __('Size', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 40, 'max' => 100, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-play-btn a' => 'height: {{SIZE}}{{UNIT}}; width: {{SIZE}}{{UNIT}}; line-height: {{SIZE}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'play_button_icon_size', [ 'label' => __('Icon Size', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-play-btn' => 'font-size: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( 'play_button_color', [ 'label' => __('Icon Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-play-btn a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'play_button_bg', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-play-btn a', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'play_button_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-play-btn a', ] ); $this->add_control( 'main_slider_play_button_hover_heading', [ 'label' => esc_html__('Hover', 'ultimate-post-kit'), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'play_button_color_hover', [ 'label' => __('Icon Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-main-slider .upk-play-btn:hover a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'play_button_bg_hover', 'selector' => '{{WRAPPER}} .upk-main-slider .upk-play-btn:hover a', ] ); $this->add_control( 'play_button_border_color_hover', [ 'label' => __('Border Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-main-slider .upk-play-btn:hover a' => 'border-color: {{VALUE}};', ], 'condition' => [ 'play_button_border_border!' => '' ] ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_title', [ 'label' => esc_html__('Title', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'show_title' => 'yes', ], ] ); $this->add_control( 'title_style', [ 'label' => esc_html__('Style', 'ultimate-post-kit') . BDTUPK_NC, 'type' => Controls_Manager::SELECT, 'default' => '', 'options' => [ '' => esc_html__('Default', 'ultimate-post-kit'), 'underline' => esc_html__('Underline', 'ultimate-post-kit'), 'middle-underline' => esc_html__('Middle Underline', 'ultimate-post-kit'), 'overline' => esc_html__('Overline', 'ultimate-post-kit'), 'middle-overline' => esc_html__('Middle Overline', 'ultimate-post-kit'), ], ] ); $this->add_control( 'title_color', [ 'label' => esc_html__('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-title a' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'title_hover_color', [ 'label' => esc_html__('Hover Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-title a:hover' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'title_typography', 'label' => esc_html__('Typography', 'ultimate-post-kit'), 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-title', ] ); $this->add_group_control( Group_Control_Text_Stroke::get_type(), [ 'name' => 'title_text_stroke', 'label' => __('Text Stroke', 'ultimate-post-kit'), 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-title a', ] ); $this->add_responsive_control( 'title_bottom_spacing', [ 'label' => esc_html__('Bottom Spacing', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, 'step' => 2, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-title' => 'margin-bottom: {{SIZE}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_category', [ 'label' => esc_html__('Category', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'show_category' => 'yes', ], ] ); $this->add_responsive_control( 'category_bottom_spacing', [ 'label' => esc_html__('Bottom Spacing', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, 'step' => 2, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category' => 'margin-bottom: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( 'category_color', [ 'label' => esc_html__('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'category_background', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'category_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a', ] ); $this->add_responsive_control( 'category_border_radius', [ 'label' => esc_html__('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'category_padding', [ 'label' => esc_html__('Padding', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', 'em', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'category_spacing', [ 'label' => esc_html__('Spacing Between', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, 'step' => 2, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a+a' => 'margin-left: {{SIZE}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'category_shadow', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a', ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'category_typography', 'label' => esc_html__('Typography', 'ultimate-post-kit'), 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a', ] ); $this->add_control( 'main_slider_category_hover_heading', [ 'label' => esc_html__('Hover', 'ultimate-post-kit'), 'type' => Controls_Manager::HEADING, 'separator' => 'before' ] ); $this->add_control( 'category_hover_color', [ 'label' => esc_html__('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a:hover' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'category_hover_background', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a:hover', ] ); $this->add_control( 'category_hover_border_color', [ 'label' => esc_html__('Border Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'condition' => [ 'category_border_border!' => '', ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-category a:hover' => 'border-color: {{VALUE}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_meta', [ 'label' => esc_html__('Meta', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, 'conditions' => [ 'relation' => 'or', 'terms' => [ [ 'name' => 'show_author', 'value' => 'yes', ], [ 'name' => 'show_date', 'value' => 'yes', ], [ 'name' => 'show_reading_time', 'value' => 'yes', ], ], ], ] ); $this->add_control( 'meta_color', [ 'label' => esc_html__('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-meta, {{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-author a' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'meta_hover_color', [ 'label' => esc_html__('Hover Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-author a:hover' => 'color: {{VALUE}};', ], ] ); $this->add_responsive_control( 'meta_space_between', [ 'label' => esc_html__('Space Between', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-meta > div:before' => 'margin: 0 {{SIZE}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'meta_typography', 'label' => esc_html__('Typography', 'ultimate-post-kit'), 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-main-slider .upk-meta', ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_thumbs_item', [ 'label' => esc_html__('Thumbs Item', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'thumbs_item_background', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-item', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'thumbs_item_width_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-item', 'separator' => 'before', ] ); $this->add_responsive_control( 'thumbs_item_width_border_radius', [ 'label' => __('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-item' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}; overflow:hidden;', ], ] ); $this->add_responsive_control( 'thumbs_item_padding', [ 'label' => __('Padding', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'thumbs_item_margin', [ 'label' => __('Margin', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-content' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'thumbs_slider_active_line', [ 'label' => esc_html__('Line', 'ultimate-post-kit'), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'thumbs_line_color', [ 'label' => __('Line Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-item:after' => 'background-color: {{VALUE}};', ], ] ); $this->add_responsive_control( 'thumbs_line_height', [ 'label' => esc_html__('Line Height', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 0, 'max' => 20, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-item:after' => 'height: {{SIZE}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_thumbs_image', [ 'label' => esc_html__('Thumbs Image', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_responsive_control( 'playlist_thumb_height', [ 'label' => esc_html__('Height', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'size_units' => ['px', '%'], 'range' => [ 'px' => [ 'min' => 100, 'max' => 500, ], '%' => [ 'min' => 10, 'max' => 100, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-img-wrap' => 'height: {{SIZE}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'playlist_thumb_width_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-img-wrap', ] ); $this->add_responsive_control( 'playlist_thumb_width_border_radius', [ 'label' => __('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-img-wrap' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_thumbs_play_button', [ 'label' => esc_html__('Thumbs Play Button', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_responsive_control( 'playlist_play_button_size', [ 'label' => esc_html__('Play Button Size', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 12, 'max' => 100, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-play-btn a' => 'height: {{SIZE}}{{UNIT}}; width: {{SIZE}}{{UNIT}}; line-height: {{SIZE}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'playlist_play_icon_size', [ 'label' => esc_html__('Play Icon Size', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 8, 'max' => 50, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-play-btn' => 'font-size: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( 'play_button_thumbs_color', [ 'label' => __('Icon Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-play-btn a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'play_button_thumbs_bg', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-play-btn a', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'play_button_thumbs_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-play-btn a', ] ); $this->add_responsive_control( 'play_button_thumbs_border_radius', [ 'label' => __('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-play-btn a' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'thumbs_slider_play_butoon_hover', [ 'label' => esc_html__('Hover', 'ultimate-post-kit'), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'play_button_thumbs_color_hover', [ 'label' => __('Icon Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-thumbs-slider .upk-play-btn:hover a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'play_button_thumbs_bg_hover', 'selector' => '{{WRAPPER}} .upk-thumbs-slider .upk-play-btn:hover a', ] ); $this->add_control( 'play_button_thumbs_border_color_hover', [ 'label' => __('Border Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-thumbs-slider .upk-play-btn:hover a' => 'border-color: {{VALUE}};', ], 'condition' => [ 'play_button_thumbs_border_border!' => '' ] ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_thumbs_title', [ 'label' => esc_html__('Thumbs Title', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'thumb_show_title' => 'yes', ], ] ); $this->add_control( 'playlist_title_color', [ 'label' => __('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-title a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'playlist_title_typo', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-title', ] ); $this->add_control( 'playlist_title_color_hover', [ 'label' => __('Hover Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-thumbs-slider .upk-content:hover .upk-title a' => 'color: {{VALUE}};', ], ] ); $this->add_control( 'playlist_title_color_active', [ 'label' => __('Active Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .swiper-slide-active .upk-title a' => 'color: {{VALUE}};', ], ] ); $this->end_controls_section(); $this->start_controls_section( 'section_style_thumbs_category', [ 'label' => esc_html__('Thumbs Category', 'ultimate-post-kit'), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'thumb_show_category' => 'yes', ], ] ); // $this->add_control( // 'playlist_category_color', // [ // 'label' => __('Color', 'ultimate-post-kit'), // 'type' => Controls_Manager::COLOR, // 'selectors' => [ // '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a' => 'color: {{VALUE}};', // ], // ] // ); // $this->add_group_control( // Group_Control_Typography::get_type(), // [ // 'name' => 'playlist_category_typo', // 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a', // ] // ); // $this->add_control( // 'playlist_category_color_hover', // [ // 'label' => __('Hover Color', 'ultimate-post-kit'), // 'type' => Controls_Manager::COLOR, // 'selectors' => [ // '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider:hover .upk-category a' => 'color: {{VALUE}};', // ], // ] // ); // $this->add_control( // 'playlist_category_color_active', // [ // 'label' => __('Active Color', 'ultimate-post-kit'), // 'type' => Controls_Manager::COLOR, // 'selectors' => [ // '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .swiper-slide-active .upk-category a' => 'color: {{VALUE}};', // ], // ] // ); // category control thumbs start $this->add_responsive_control( 'playlist_category_bottom_spacing', [ 'label' => esc_html__('Bottom Spacing', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, 'step' => 2, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category' => 'margin-bottom: {{SIZE}}{{UNIT}};', ], ] ); $this->add_control( 'playlist_category_color', [ 'label' => esc_html__('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'playlist_category_background', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a', ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'playlist_category_border', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a', ] ); $this->add_responsive_control( 'playlist_category_border_radius', [ 'label' => esc_html__('Border Radius', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'playlist_category_padding', [ 'label' => esc_html__('Padding', 'ultimate-post-kit'), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => ['px', 'em', '%'], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'playlist_category_spacing', [ 'label' => esc_html__('Spacing Between', 'ultimate-post-kit'), 'type' => Controls_Manager::SLIDER, 'range' => [ 'px' => [ 'min' => 0, 'max' => 50, 'step' => 2, ], ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a+a' => 'margin-left: {{SIZE}}{{UNIT}};', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'playlist_category_shadow', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a', ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'playlist_category_typography', 'label' => esc_html__('Typography', 'ultimate-post-kit'), 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a', ] ); $this->add_control( 'thumbs_slider_category_hover_heading', [ 'label' => esc_html__('Hover', 'ultimate-post-kit'), 'type' => Controls_Manager::HEADING, 'separator' => 'before' ] ); $this->add_control( 'playlist_category_hover_color', [ 'label' => esc_html__('Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a:hover' => 'color: {{VALUE}};', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'playlist_category_hover_background', 'selector' => '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a:hover', ] ); $this->add_control( 'playlist_category_hover_border_color', [ 'label' => esc_html__('Border Color', 'ultimate-post-kit'), 'type' => Controls_Manager::COLOR, 'condition' => [ 'playlist_category_border_border!' => '', ], 'selectors' => [ '{{WRAPPER}} .upk-pholox-slider .upk-thumbs-slider .upk-category a:hover' => 'border-color: {{VALUE}};', ], ] ); $this->end_controls_section(); } /** * Main query render for this widget * @param $posts_per_page number item query limit */ public function query_posts($posts_per_page) { $default = $this->getGroupControlQueryArgs(); $args = []; if ($posts_per_page) { $args['posts_per_page'] = $posts_per_page; } $args = array_merge($default, $args); $this->_query = new WP_Query($args); } public function render_playlist_title() { $settings = $this->get_settings_for_display(); if (!$this->get_settings('thumb_show_title')) { return; } $title = get_the_title(); printf('<%1$s class="upk-title">%3$s', esc_attr(Utils::get_valid_html_tag($settings['title_tags'])), 'javascript:void(0);', esc_html( $title ), esc_attr( $title )); } function thumbs_render_category() { if (!$this->get_settings('thumb_show_category')) { return; } ?>
get_settings('posts_source')) ); ?>
get_settings_for_display(); if (!$this->get_settings('show_date')) { return; } ?>
get_settings('show_author')) { return; } ?>
video_link_render($video_link); ?>
render_image(get_post_thumbnail_id($post_id), $image_size); ?>
thumbs_render_category(); ?> render_playlist_title(); ?>
get_settings_for_display(); if ($video_link !== false) { $video_link = $this->video_link_render($video_link); } ?>
render_image(get_post_thumbnail_id($post_id), $image_size); ?>
render_category(); ?>
render_title(substr($this->get_name(), 4)); ?>
render_author(); ?>
render_date(); ?>
get_settings_for_display(); $id = 'upk-pholox-slider-' . $this->get_id(); $settings = $this->get_settings_for_display(); $this->add_render_attribute('pholox-slide', 'id', $id); $this->add_render_attribute('pholox-slide', 'class', [ 'upk-pholox-slider', 'upk-pholox-slide-style-' . $settings['content_position'] ]); $this->add_render_attribute( [ 'pholox-slide' => [ 'data-widget' => [ wp_json_encode(array_filter([ "id" => '#' . $id ])) ], 'data-settings' => [ wp_json_encode(array_filter([ "autoplay" => ("yes" == $settings["autoplay"]) ? ["delay" => $settings["autoplay_speed"]] : false, "loop" => ($settings["loop"] == "yes") ? true : false, "speed" => $settings["speed"]["size"], "effect" => 'fade', "fadeEffect" => ['crossFade' => true], "parallax" => true, "grabCursor" => ($settings["grab_cursor"] === "yes") ? true : false, "pauseOnHover" => true, "slidesPerView" => 1, "observer" => ($settings["observer"]) ? true : false, "observeParents" => ($settings["observer"]) ? true : false, "loopedSlides" => 4, "lazy" => [ "loadPrevNext" => "true", ], ])) ] ] ] ); ?>
print_render_attribute_string('pholox-slide'); ?>>
get_settings_for_display(); $this->query_posts($settings['item_limit']['size']); $wp_query = $this->get_query(); if (!$wp_query->found_posts) { return; } $this->add_render_attribute('swiper', 'class', 'swiper-carousel swiper'); $this->add_render_attribute('swiper-thumbs', 'class', 'swiper-thumbs swiper'); $this->render_header(); ?>
print_render_attribute_string('swiper'); ?>>
have_posts()) { $wp_query->the_post(); $video_link = get_post_meta(get_the_ID(), '_upk_video_link_meta_key', true); $thumbnail_size = $settings['primary_thumbnail_size']; if ($video_link) { $this->render_item(get_the_ID(), $thumbnail_size, $video_link); } else { $this->render_item(get_the_ID(), $thumbnail_size, false); } } ?>
print_render_attribute_string('swiper-thumbs'); ?>>
have_posts()) { $wp_query->the_post(); $video_link = get_post_meta(get_the_ID(), '_upk_video_link_meta_key', true); $thumbnail_size = $settings['primary_thumbnail_size']; if ($video_link) { $this->render_playlist_item(get_the_ID(), $thumbnail_size, $video_link); } else { $this->render_playlist_item(get_the_ID(), $thumbnail_size, false); } } ?>
render_footer(); wp_reset_postdata(); } }