<?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 ); } } }