File "class-widget-search.php"

Full Path: /home/ycoalition/public_html/blog/wp-content/themes/woodmart/inc/widgets/class-widget-search.php
File size: 3.02 KB
MIME-type: text/x-php
Charset: utf-8

<?php if ( ! defined('WOODMART_THEME_DIR')) exit('No direct script access allowed');

/**
 * AJAX search widget
 *
 */

if( ! class_exists( 'WOODMART_Widget_Search' ) ) {
	class WOODMART_Widget_Search extends WPH_Widget {

		function __construct() {
			if( ! woodmart_woocommerce_installed() ) return;

			// Configure widget array
			$args = array( 
				// Widget Backend label
				'label' => esc_html__( 'WOODMART AJAX Search', 'woodmart' ),
				// Widget Backend Description								
				'description' =>esc_html__( 'Search form by products with AJAX', 'woodmart' ),
				'slug' => 'woodmart-ajax-search',
			 );
		
			// Configure the widget fields
		
			// fields array
			$args['fields'] = array(
				array(
					'id'	=> 'title',
					'type'  => 'text',
					'std'   => esc_html__( 'Search products', 'woodmart' ),
					'name' 	=> esc_html__( 'Title', 'woodmart' )
				),
				array(
					'id'   => 'post_type',
					'type' => 'dropdown',
					'std'  => 'product',
					'name' => esc_html__( 'Search post type', 'woodmart' ),
					'fields' => array(
						esc_html__( 'Product', 'woodmart' ) => 'product',
						esc_html__( 'Post', 'woodmart' ) => 'post',
						esc_html__( 'Portfolio', 'woodmart' ) => 'portfolio'
					)
				),
				array(
					'id'	=> 'number',
					'type'  => 'number',
					'std'   => 4,
					'name' 	=> esc_html__( 'Number of products to show', 'woodmart' ),
				),
				array(
					'id'	=> 'price',
					'type'  => 'checkbox',
					'std'   => 1,
					'name' 	=> esc_html__( 'Show price', 'woodmart' ),
				),
				array(
					'id'	=> 'thumbnail',
					'type'  => 'checkbox',
					'std'   => 1,
					'name' 	=> esc_html__( 'Show thumbnail', 'woodmart' ),
				),
				array(
					'id'	=> 'categories',
					'type'  => 'checkbox',
					'std'   => 1,
					'name' 	=> esc_html__( 'Show categories', 'woodmart' ),
				),
			);

			// create widget
			$this->create_widget( $args );
		}
		

		function widget( $args, $instance )	{
			if ( $this->is_widget_preview() ) {
				return;
			}

			extract($args);

			echo wp_kses_post( $before_widget );

			$number = empty( $instance['number'] ) ? 3 : absint( $instance['number'] );
			$thumbnail = empty( $instance['thumbnail'] ) ? 0 : absint( $instance['thumbnail'] );
			$price = empty( $instance['price'] ) ? 0 : absint( $instance['price'] );
			$post_type = empty( $instance['post_type'] ) ? 'product' : $instance['post_type'];
			
			$categories = true;
			
			if ( isset( $instance['categories'] ) ) {
				$categories = empty( $instance['categories'] ) ? 0 : absint( $instance['price'] );
			}
			
			if ( $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance ) ) {
				echo wp_kses_post( $before_title ) . $title . wp_kses_post( $after_title );
			}

			woodmart_search_form( array(
				'ajax' => true,
				'count' => $number,
				'thumbnail' => $thumbnail,
				'show_categories' => $categories,
				'post_type' => $post_type,
				'price' => $price,
			) );


			echo wp_kses_post( $after_widget );
		}

		function form( $instance ) {
			parent::form( $instance );
		}
	}
}