Server IP : 66.29.132.124 / Your IP : 3.146.176.191 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\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 Feature_Service_V1 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_feature_service_v1'; } /** * Get widget title. * Retrieve button widget title. * * @since 1.0.0 * @access public * @return string Widget title. */ public function get_title() { return esc_html__('Feature Service V1', '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( 'feature_service_v1', [ 'label' => esc_html__('Feature Service V1', 'meto'), ] ); $this->add_control( 'text_limit', [ 'label' => esc_html__('Text Limit', 'meto'), 'type' => Controls_Manager::NUMBER, 'default' => 3, 'min' => 1, 'max' => 100, 'step' => 1, ] ); $this->add_control( 'query_number', [ 'label' => esc_html__('Number of post', 'meto'), 'type' => Controls_Manager::NUMBER, 'default' => 3, 'min' => 1, 'max' => 100, 'step' => 1, ] ); $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( '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_exclude', [ 'label' => esc_html__('Exclude', 'meto'), 'type' => Controls_Manager::TEXT, 'description' => esc_html__('Exclude posts, pages, etc. by ID with comma separated.', 'meto'), ] ); $this->add_control( 'query_category', [ 'type' => Controls_Manager::SELECT, 'label' => esc_html__('Category', 'meto'), 'options' => get_service_categories() ] ); $this->add_control( 'style_two', [ 'label' => esc_html__( 'Choose Different Style', 'meto' ), 'type' => Controls_Manager::SELECT, 'default' => 'one', 'options' => array( 'one' => esc_html__( 'Choose Style one', 'meto' ), 'two' => esc_html__( 'Choose Style Two', 'meto' ), ), ] ); $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 = meto_set($_POST, 'paged') ? esc_attr($_POST['paged']) : 1; $this->add_render_attribute('wrapper', 'class', 'templatepath-meto'); $args = array( 'post_type' => 'meto_service', 'posts_per_page' => meto_set($settings, 'query_number'), 'orderby' => meto_set($settings, 'query_orderby'), 'order' => meto_set($settings, 'query_order'), 'paged' => $paged ); if (meto_set($settings, 'query_exclude')) { $settings['query_exclude'] = explode(',', $settings['query_exclude']); $args['post__not_in'] = meto_set($settings, 'query_exclude'); } if (meto_set($settings, 'query_category')) { $args['service_cat'] = meto_set($settings, 'query_category'); } $query = new \WP_Query($args); if ($query->have_posts()) { ?> <!-- Services Section --> <section class="services-section <?php if($settings['style_two'] == 'two') echo 'style-two'; else echo ''; ?>"> <div class="auto-container"> <div class="row clearfix"> <?php while ($query->have_posts()) : $query->the_post(); ?> <!-- Service Block --> <div class="service-block col-lg-3 col-md-6 col-sm-12"> <div class="inner-box wow fadeInLeft" data-wow-delay="0ms" data-wow-duration="1500ms"> <div class="inner-content"> <div class="icon-box"> <span class="icon <?php echo wp_kses(get_post_meta(get_the_id(), 'service_icon', true), $allowed_tags); ?>"></span> </div> <h5><?php the_title(); ?></h5> <div class="text"><?php echo wp_kses(meto_trim(get_the_content(), $settings['text_limit']), true); ?></div> <span class="side-icon <?php echo wp_kses(get_post_meta(get_the_id(), 'service_icon', true), $allowed_tags); ?>"></span> </div> <!-- Overlay Box --> <div class="overlay-box"> <div class="overlay-inner"> <div class="content"> <div class="left-top-icon <?php echo wp_kses(get_post_meta(get_the_id(), 'service_icon', true), $allowed_tags); ?>"></div> <div class="overlay-icon <?php echo wp_kses(get_post_meta(get_the_id(), 'service_icon', true), $allowed_tags); ?>"></div> <h5><a href="<?php echo esc_url(the_permalink(get_the_id())); ?>"><?php the_title(); ?></a></h5> <div class="text"><?php echo wp_kses(meto_trim(get_the_content(), $settings['text_limit']), true); ?></div> <a href="<?php echo esc_url(the_permalink(get_the_id())); ?>" class="arrow"><span class="icon flaticon-right-arrow-2"></span></a> </div> </div> </div> </div> </div> <?php endwhile; ?> </div> </div> </section> <!-- End Services Section --> <?php } wp_reset_postdata(); } }