Server IP : 66.29.132.124 / Your IP : 3.143.17.175 Web Server : LiteSpeed System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : wavevlvu ( 1524) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/wavevlvu/diixadigital.com/wp-content/plugins/meto-plugin/elementor/ |
Upload File : |
<?php namespace METOPLUGIN\Element; use Elementor\Controls_Manager; use Elementor\Controls_Stack; use Elementor\Group_Control_Typography; use Elementor\Scheme_Typography; use Elementor\Scheme_Color; use Elementor\Group_Control_Border; use Elementor\Repeater; use Elementor\Widget_Base; use Elementor\Utils; use Elementor\Group_Control_Text_Shadow; use Elementor\Plugin; /** * Elementor button widget. * Elementor widget that displays a button with the ability to control every * aspect of the button design. * * @since 1.0.0 */ class Recent_Projects extends Widget_Base { /** * Get widget name. * Retrieve button widget name. * * @since 1.0.0 * @access public * @return string Widget name. */ public function get_name() { return 'meto_recent_projects'; } /** * Get widget title. * Retrieve button widget title. * * @since 1.0.0 * @access public * @return string Widget title. */ public function get_title() { return esc_html__('Recent Projects', 'meto'); } /** * Get widget icon. * Retrieve button widget icon. * * @since 1.0.0 * @access public * @return string Widget icon. */ public function get_icon() { return 'eicon-library-open'; } /** * Get widget categories. * Retrieve the list of categories the button widget belongs to. * Used to determine where to display the widget in the editor. * * @since 2.0.0 * @access public * @return array Widget categories. */ public function get_categories() { return [ 'meto' ]; } /** * Register button widget controls. * Adds different input fields to allow the user to change and customize the widget settings. * * @since 1.0.0 * @access protected */ protected function register_controls() { $this->start_controls_section( 'recent_projects', [ 'label' => esc_html__('Recent Projects', 'meto'), ] ); $this->add_control( 'subtitle', [ 'label' => __('Sub Title', 'meto'), 'type' => Controls_Manager::TEXT, 'dynamic' => [ 'active' => true, ], 'placeholder' => __('Enter your Sub Title', 'meto'), ] ); $this->add_control( 'title', [ 'label' => __('Title', 'meto'), 'type' => Controls_Manager::TEXTAREA, 'dynamic' => [ 'active' => true, ], 'placeholder' => __('Enter your title', 'meto'), ] ); $this->add_control( 'text', [ 'label' => __('Description', 'meto'), 'type' => Controls_Manager::TEXTAREA, 'dynamic' => [ 'active' => true, ], 'placeholder' => __('Enter your Description', 'meto'), ] ); $this->add_control( 'number', [ 'label' => esc_html__('Number of post', 'meto'), 'type' => Controls_Manager::NUMBER, 'default' => 3, 'min' => 1, 'max' => 100, 'step' => 1, ] ); $this->add_control( 'cat_exclude', [ 'label' => esc_html__('Exclude', 'meto'), 'type' => Controls_Manager::TEXT, 'description' => esc_html__('Exclude categories, etc. by ID with comma separated.', 'meto'), ] ); $this->add_control( 'query_order', [ 'label' => esc_html__('Order', 'meto'), 'type' => Controls_Manager::SELECT, 'default' => 'DESC', 'options' => array( 'DESc' => esc_html__('DESC', 'meto'), 'ASC' => esc_html__('ASC', 'meto'), ), ] ); $this->add_control( 'query_orderby', [ 'label' => esc_html__('Order By', 'meto'), 'type' => Controls_Manager::SELECT, 'default' => 'date', 'options' => array( 'date' => esc_html__('Date', 'meto'), 'title' => esc_html__('Title', 'meto'), 'menu_order' => esc_html__('Menu Order', 'meto'), 'rand' => esc_html__('Random', 'meto'), ), ] ); $this->add_control( 'btn_title', [ 'label' => __('Button Title', 'meto'), 'type' => Controls_Manager::TEXT, 'dynamic' => [ 'active' => true, ], 'placeholder' => __('Enter your Button Title', 'meto'), 'default' => __('View All Work', 'meto'), ] ); $this->add_control( 'btn_link', [ 'label' => __('Button Url', 'meto'), 'type' => Controls_Manager::URL, 'placeholder' => __('https://your-link.com', 'plugin-domain'), 'show_external' => true, 'default' => [ 'url' => '', 'is_external' => true, 'nofollow' => true, ], ] ); $this->end_controls_section(); } /** * Render button widget output on the frontend. * Written in PHP and used to generate the final HTML. * * @since 1.0.0 * @access protected */ protected function render() { $settings = $this->get_settings_for_display(); $allowed_tags = wp_kses_allowed_html('post'); $paged = get_query_var('paged'); $paged = meto_set($_REQUEST, 'paged') ? esc_attr($_REQUEST['paged']) : $paged; $this->add_render_attribute('wrapper', 'class', 'templatepath-fixkar'); $args = array( 'post_type' => 'meto_project', 'posts_per_page' => meto_set($settings, 'number'), 'orderby' => meto_set($settings, 'query_orderby'), 'order' => meto_set($settings, 'query_order'), 'paged' => $paged ); $terms_array = explode(",", meto_set($settings, 'cat_exclude')); if (meto_set($settings, 'cat_exclude')) { $args['tax_query'] = array(array('taxonomy' => 'project_cat','field' => 'id','terms' => $terms_array,'operator' => 'NOT IN',)); } $allowed_tags = wp_kses_allowed_html('post'); $query = new \WP_Query($args); $t = ''; $data_filtration = ''; $data_posts = ''; if ($query->have_posts()) { ob_start(); ?> <?php $count = 0; $fliteration = array(); while ($query->have_posts()): $query->the_post(); global $post; $meta = ''; //printr($meta); $meta1 = ''; //_WSH()->get_meta(); $post_terms = get_the_terms(get_the_id(), 'project_cat');// printr($post_terms); exit(); foreach ((array)$post_terms as $pos_term) { $fliteration[$pos_term->term_id] = $pos_term; } $temp_category = get_the_term_list(get_the_id(), 'project_cat', '', ', '); $post_terms = wp_get_post_terms(get_the_id(), 'project_cat'); $term_slug = ''; if ($post_terms) { foreach ($post_terms as $p_term) { $term_slug .= $p_term->slug.' '; } } $term_list = wp_get_post_terms(get_the_id(), 'project_cat', array("fields" => "names")); $post_thumbnail_id = get_post_thumbnail_id($post->ID); $post_thumbnail_url = wp_get_attachment_url($post_thumbnail_id); ?> <!-- Gallery Block --> <div class="gallery-block all mix <?php echo esc_attr($term_slug); ?> col-lg-3 col-md-6 col-sm-12"> <div class="inner-box"> <figure class="image-box"> <?php the_post_thumbnail('meto_420x370'); ?> <!-- Overlay Box --> <div class="overlay-box"> <div class="overlay-inner"> <div class="content"> <h4><a href="<?php echo esc_url(the_permalink(get_the_id())); ?>"><?php the_title(); ?></a></h4> <div class="category"><?php echo implode(' / ', (array)$term_list); ?></div> <a href="<?php echo esc_url(the_permalink(get_the_id())); ?>" class="link"><span class="icon fa fa-link"></span></a> <a href="<?php echo esc_url($post_thumbnail_url); ?>" data-fancybox="gallery-1" data-caption="" class="link"><span class="icon flaticon-full-screen"></span></a> </div> </div> </div> </figure> </div> </div> <?php endwhile; ?> <?php wp_reset_postdata(); $data_posts = ob_get_contents(); ob_end_clean(); ob_start(); ?> <?php $terms = get_terms(array('project_cat')); ?> <!-- Gallery Section --> <section class="gallery-section"> <div class="outer-section"> <!-- MixitUp Galery --> <div class="mixitup-gallery"> <div class="auto-container"> <div class="sec-title"> <div class="clearfix"> <?php if($settings['subtitle'] || $settings['title'] || $settings['text']){ ?> <div class="pull-left"> <?php if($settings['subtitle']){ ?><div class="title"><?php echo wp_kses($settings['subtitle'], $allowed_tags); ?></div><?php } ?> <?php if($settings['title']){ ?><h2><?php echo wp_kses($settings['title'], $allowed_tags); ?></h2><?php } ?> <?php if($settings['text']){ ?><div class="text"><?php echo wp_kses($settings['text'], $allowed_tags); ?></div><?php } ?> </div> <?php } ?> <div class="pull-right"> <!--Filter--> <div class="filters clearfix"> <ul class="filter-tabs filter-btns clearfix"> <li class="active filter" data-role="button" data-filter="all"><?php esc_attr_e('All', 'meto'); ?></li> <?php foreach ($fliteration as $t): ?> <li class="filter" data-role="button" data-filter=".<?php echo esc_attr(meto_set($t, 'slug')); ?>"><?php echo meto_set($t, 'name'); ?></li> <?php endforeach; ?> </ul> </div> </div> </div> </div> </div> <div class="filter-list row clearfix"> <?php echo wp_kses($data_posts, $allowed_tags); ?> </div> </div> <?php if($settings['btn_link']['url'] || $settings['btn_title']){ ?> <div class="btn-box text-center"> <a href="<?php echo esc_url($settings['btn_link']['url']); ?>" class="theme-btn btn-style-five"><span class="txt"><?php echo wp_kses($settings['btn_title'], $allowed_tags); ?></span></a> </div> <?php } ?> </div> </section> <!-- End Gallery Section --> <?php } } }