at path:
ROOT
/
wp-content
/
plugins
/
kadu-plugin
/
elementor
/
widgets
/
blog.php
run:
R
W
Run
view
DIR
2025-12-13 10:16:30
R
W
Run
accordion.php
6.25 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
animate-bg.php
2.24 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
animated-border.php
2.27 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
blog.php
10.89 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
brand.php
3.5 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
button.php
6.99 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
category.php
5.64 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
contact-form.php
2.47 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
contact-info.php
5.52 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
content-tab.php
13.9 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
counters.php
5.46 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
course-tab.php
8.88 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
course.php
6.09 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
cta.php
12.13 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
event-info.php
4.59 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
event.php
11.78 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
feature.php
10.45 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
gallery.php
4.76 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
header.php
20.13 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
heading.php
10.11 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
hero-banner.php
10.07 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
image-box.php
8.14 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
info-box.php
6.63 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
list.php
6.01 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
pricing-plan.php
8 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
pricing-tab.php
11.37 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
rating-box.php
5.02 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
service-carousel.php
9.05 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
service.php
6.76 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
slider.php
14.69 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
team-carousel.php
9.95 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
team.php
6.25 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
testimonial.php
11.65 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
video-popup.php
3.4 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
video-slider.php
6.3 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
video-tab.php
6.89 KB
2024-10-16 22:18:55
R
W
Run
Delete
Rename
error_log
up
📄
blog.php
Save
<?php /** * Elementor Single Widget * @package Kadu Tools * @since 1.0.0 */ namespace Elementor; if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly. class Kadu_Blog extends Widget_Base { /** * Get widget name. * * Retrieve Elementor widget name. * * @since 1.0.0 * @access public * * @return string Widget name. */ public function get_name() { return 'Kadu-post-grid'; } /** * Get widget title. * * Retrieve Elementor widget title. * * @since 1.0.0 * @access public * * @return string Widget title. */ public function get_title() { return esc_html__( 'Kadu Blog Post', 'Kadu-plugin' ); } /** * Get widget icon. * * Retrieve Elementor widget icon. * * @since 1.0.0 * @access public * * @return string Widget icon. */ public function get_icon() { return 'Kadu-custom-icon'; } /** * Get widget categories. * * Retrieve the list of categories the Elementor widget belongs to. * * @since 1.0.0 * @access public * * @return array Widget categories. */ public function get_categories() { return [ 'Kadu_widgets' ]; } protected function register_controls() { $this->start_controls_section( 'int_layout_opt', [ 'label' => esc_html__( 'Blog Layout Option', 'Kadu-plugin' ), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'style', [ 'label' => esc_html__( 'Style', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::SELECT, 'default' => '1', 'options' => [ '1' => esc_html__( 'Style 1', 'Kadu-plugin' ), '2' => esc_html__( 'Style 2', 'Kadu-plugin' ), '3' => esc_html__( 'Style 3', 'Kadu-plugin' ), '4' => esc_html__( 'Style 4', 'Kadu-plugin' ), '5' => esc_html__( 'Style 5', 'Kadu-plugin' ), ] ] ); $this->add_control( 'description', [ 'label' => esc_html__( 'Description', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::WYSIWYG, 'placeholder' => esc_html__( 'Type your description here', 'Kadu-plugin' ), 'condition' => [ 'style' => ['2', '4', '5'], ], ] ); $this->end_controls_section(); $this->start_controls_section( 'post_sec_h_option', [ 'label' => esc_html__( 'Post Option', 'Kadu-plugin' ), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'post_order', [ 'label' => esc_html__( 'Post Order', 'Kadu-plugin' ), 'type' => Controls_Manager::SELECT, 'default' => 'ASC', 'options' => [ 'ASC' => esc_html__( 'Ascending', 'Kadu-plugin' ), 'DESC' => esc_html__( 'Descending', 'Kadu-plugin' ), ], ] ); $this->add_control( 'post_per_page', [ 'label' => __( 'Posts Per Page', 'Kadu-plugin' ), 'type' => Controls_Manager::NUMBER, 'min' => 1, 'default' => 5, ] ); $this->add_control( 'post_categories', [ 'type' => Controls_Manager::SELECT2, 'label' => esc_html__( 'Select Categories', 'Kadu-plugin' ), 'options' => Kadu_Blog_category(), 'label_block' => true, 'multiple' => true, ] ); $this->add_control( 'title_length', [ 'label' => __( 'Title Length', 'Kadu-tools' ), 'type' => Controls_Manager::NUMBER, 'step' => 1, 'default' => 20, ] ); $this->add_control( 'excerpt_length', [ 'label' => __( 'Excerpt Length', 'Kadu-tools' ), 'type' => Controls_Manager::NUMBER, 'step' => 1, 'default' => 20, ] ); $this->add_control( 'button_label', [ 'label' => esc_html__( 'Readmore Button', 'Kadu-plugin' ), 'default' => esc_html__( 'Read more', 'Kadu-plugin' ), 'type' => Controls_Manager::TEXT, ] ); $this->add_control( 'button_img', [ 'label' => esc_html__( 'Button Img', 'Kadu-plugin' ), 'type' => Controls_Manager::MEDIA, 'condition' => [ 'style' => ['5'], ], ] ); $this->end_controls_section(); $this->start_controls_section( 'blog_style', [ 'label' => esc_html__( 'Blog Style', 'Kadu-plugin' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'post_title', [ 'label' => esc_html__( 'Post Title Style', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'post_list_title_color', [ 'label' => esc_html__( 'Post Title Color', 'Kadu-plugin' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .item-title' => 'color: {{VALUE}}' ], ] ); $this->add_control( 'post_hover_title_color', [ 'label' => esc_html__( 'Post Title Hover Color', 'Kadu-plugin' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .item-title:hover' => 'color: {{VALUE}}' ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'post_title_typography', 'selector' => ' {{WRAPPER}} .item-title ', ] ); $this->add_control( 'post_date_title', [ 'label' => esc_html__( 'Post Date Style', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'post_date_color', [ 'label' => esc_html__( 'Post Date Color', 'Kadu-plugin' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .item-date' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'post_date_bg_color', [ 'label' => esc_html__( 'Post Date BG Color', 'Kadu-plugin' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .item-date' => 'background-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'post_date_typography', 'selector' => ' {{WRAPPER}} .item-date ', ] ); $this->add_control( 'post_desc_title', [ 'label' => esc_html__( 'Post Description Style', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'post_desc_color', [ 'label' => esc_html__( 'Post Description Color', 'Kadu-plugin' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .item-disc' => 'color: {{VALUE}}' ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'post_desc_typography', 'selector' => ' {{WRAPPER}} .item-disc ', ] ); $this->end_controls_section(); // feature style $this->start_controls_section( 'slider_button_one', [ 'label' => esc_html__( 'Button Style', 'Kadu-plugin' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_group_control( \Elementor\Group_Control_Typography::get_type(), [ 'name' => 'm_b_typography', 'selector' => '{{WRAPPER}} .ftc-btn-1', ] ); $this->add_control( 'padding', [ 'label' => esc_html__( 'Padding', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em', 'rem', 'custom' ], 'selectors' => [ '{{WRAPPER}} .ftc-btn-1' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'b_round', [ 'label' => esc_html__( 'Border Radius', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em', 'rem', 'custom' ], 'selectors' => [ '{{WRAPPER}} .ftc-btn-1' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->start_controls_tabs( 'style_tabs' ); $this->start_controls_tab( 'style_normal_tab', [ 'label' => esc_html__( 'Normal', 'Kadu-plugin' ), ] ); $this->add_control( 'btn_text', [ 'label' => esc_html__( 'Text Color', 'Kadu-plugin' ), 'type' => \Elementor\Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .ftc-btn-1' => 'color: {{VALUE}}', ], ] ); $this->add_group_control( \Elementor\Group_Control_Background::get_type(), [ 'name' => 'button_bg_color', 'types' => [ 'gradient' ], 'exclude' => [ 'image' ], 'selector' => '{{WRAPPER}} .ftc-btn-1', 'fields_options' => [ 'background' => [ 'label' => esc_html__( 'Button BG Color ', 'Kadu-plugin' ), 'description' => esc_html__( 'Choose background type and style.', 'Kadu-plugin' ), 'separator' => 'before', ] ] ] ); $this->end_controls_tab(); $this->start_controls_tab( 'style_hover_tab', [ 'label' => esc_html__( 'Hover', 'Kadu-plugin' ), ] ); $this->add_group_control( \Elementor\Group_Control_Background::get_type(), [ 'name' => 'button_bg_hover_color', 'types' => [ 'gradient' ], 'exclude' => [ 'image' ], 'selector' => '{{WRAPPER}} .ftc-btn-1:before', 'fields_options' => [ 'background' => [ 'label' => esc_html__( 'Button Hover BG Color ', 'Kadu-plugin' ), 'description' => esc_html__( 'Choose background type and style.', 'Kadu-plugin' ), 'separator' => 'before', ] ] ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); } protected function render() { $settings = $this->get_settings_for_display(); $args = array( 'post_type' => 'post', 'posts_per_page' => !empty( $settings['post_per_page'] ) ? $settings['post_per_page'] : 1, 'post_status' => 'publish', 'ignore_sticky_posts' => 1, 'order' => $settings['post_order'], ); if( ! empty($settings['post_categories'] ) ){ $args['category_name'] = implode(',', $settings['post_categories']); } $query = new \WP_Query( $args ); require __DIR__ . '/view/blog/blog-' . $settings['style'] . '.php'; } protected function Kadu_category_name(){ $catgorys = get_the_category(); // Shuffle the array of categories shuffle($catgorys); // Select a random category $random_category = array_rand($catgorys, 1); $category = $catgorys[$random_category]; $meta = get_term_meta($category->term_id, 'barfii_cate_meta', true); $catemeta = !empty( $meta['cate-color'] )? $meta['cate-color'] : '#3b60fe'; ?> <a href="<?php echo esc_url(get_category_link($category->term_id)); ?>"> <span><?php echo esc_html($category->cat_name); ?></span> </a> <?php } } Plugin::instance()->widgets_manager->register( new Kadu_Blog() );