File: /mnt/data/dreamstour-wp/wp-content/plugins/dreams-tour/includes/search-widget.php
<?php
/**
* Widget: Dreamstour Search
*/
if (!defined('ABSPATH')) {
exit;
}
class Dreamstour_Widget_Search extends WP_Widget
{
public function __construct()
{
$widget_ops = array(
'classname' => 'widget_dreamstour_search',
'description' => __('A search form for your site.', 'dreams-tour'),
'customize_selective_refresh' => true,
);
parent::__construct('dreamstour-search', __('Dreams Tour Search', 'dreams-tour'), $widget_ops);
$this->alt_option_name = 'widget_dreamstour_search';
}
public function widget($args, $instance)
{
if (!isset($args['widget_id'])) {
$args['widget_id'] = $this->id;
}
$title = !empty($instance['title']) ? $instance['title'] : esc_html__('Search', 'dreams-tour');
$placeholder = !empty($instance['placeholder']) ? $instance['placeholder'] : esc_html__('Search', 'dreams-tour');
echo $args['before_widget'];
?>
<div class="card-header border-0 pb-0">
<div class="pb-3 border-bottom">
<h5><i class="isax isax-search-normal-1 text-primary fs-16 me-2"></i><?php echo esc_html($title); ?></h5>
</div>
</div>
<div class="card-body pt-3">
<form role="search" method="get" action="<?php echo esc_url(home_url('/')); ?>">
<div class="bg-light-100 p-3 rounded border">
<div class="input-icon">
<span class="input-icon-addon">
<i class="isax isax-search-normal-1 fs-14"></i>
</span>
<input type="text" class="form-control" name="s" value="<?php echo esc_attr(get_search_query()); ?>" placeholder="<?php echo esc_attr($placeholder); ?>">
</div>
</div>
</form>
</div>
<?php
echo $args['after_widget'];
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance['title'] = sanitize_text_field($new_instance['title']);
$instance['placeholder'] = sanitize_text_field($new_instance['placeholder']);
return $instance;
}
public function form($instance)
{
$title = isset($instance['title']) ? esc_attr($instance['title']) : esc_html__('Search', 'dreams-tour');
$placeholder = isset($instance['placeholder']) ? esc_attr($instance['placeholder']) : esc_html__('Search', 'dreams-tour');
?>
<p>
<label for="<?php echo esc_attr($this->get_field_id('title')); ?>"><?php esc_html_e('Title:', 'dreams-tour'); ?></label>
<input class="widefat" id="<?php echo esc_attr($this->get_field_id('title')); ?>" name="<?php echo esc_attr($this->get_field_name('title')); ?>" type="text" value="<?php echo esc_attr($title); ?>" />
</p>
<p>
<label for="<?php echo esc_attr($this->get_field_id('placeholder')); ?>"><?php esc_html_e('Placeholder:', 'dreams-tour'); ?></label>
<input class="widefat" id="<?php echo esc_attr($this->get_field_id('placeholder')); ?>" name="<?php echo esc_attr($this->get_field_name('placeholder')); ?>" type="text" value="<?php echo esc_attr($placeholder); ?>" />
</p>
<?php
}
}
function dreamstour_register_search_widget()
{
register_widget('Dreamstour_Widget_Search');
}
add_action('widgets_init', 'dreamstour_register_search_widget');