Не работает форма поиска wordpress кроме главной страницы?

Сделал свой шаблон для Wordpress. Подключил поиск, но работает только если я ввожу запрос на главной странице, на остальных страницах и товарах woocommerce ничего не происходит.

Вот код

файл searchform.php

<form name="search" action="<?php echo home_url( '/' ) ?>" method="get" class="search-form">
	<input class="search-form__input" type="text" value="<?php echo get_search_query() ?>" name="s" placeholder="<?php echo __('Поиск по сайту ...', 'whitesquare'); ?>" >
	<button type="submit" class="search-form__btn"><?php echo __('', 'whitesquare'); ?></button>
</form>


вот functions.php если надо

<?
function enqueue_styles() {
	wp_enqueue_style( 'whitesquare-style', get_stylesheet_uri());
	wp_register_style('font-style', 'http://fonts.googleapis.com/css?family=Oswald:400,300');
	wp_enqueue_style( 'font-style');
}
add_action('wp_enqueue_scripts', 'enqueue_styles');

function enqueue_scripts () {
	wp_register_script('html5-shim', 'http://html5shim.googlecode.com/svn/trunk/html5.js');
	wp_enqueue_script('html5-shim');
}
add_action('wp_enqueue_scripts', 'enqueue_scripts');

if (function_exists('add_theme_support')) {
	add_theme_support('menus');
}
add_filter('woocommerce_add_to_cart_fragments', 'header_add_to_cart_fragment');

function header_add_to_cart_fragment( $fragments ) {
    global $woocommerce;
    ob_start();
    ?>
    <span class="basket-btn__counter">(<?php echo sprintf($woocommerce->cart->cart_contents_count); ?>)</span>
    <?php
    $fragments['.basket-btn__counter'] = ob_get_clean();
    return $fragments;
}

?>
  • Вопрос задан
  • 399 просмотров
Решения вопроса 1
nestercom
@nestercom Автор вопроса
Я нашёл в чём была проблема! Посмотрел исходный код.

Было

<form class="search-form">
<form role="search" action="https://kalibr-tools.ru/" method="get" id="searchform" class="search-form">
  <label><input type="text" value="" name="s" id="s" placeholder="Поиск по сайту .." class="search-form__input" >
  </label>
  <button type="submit" class="search-form__btn"></button>
</form>
      <button class="search-form__btn" type="submit"></button>
      <button class="search-form__open-btn" type="button"></button>
    </form>


Я исправил на

<form role="search" action="https://kalibr-tools.ru/" method="get" id="searchform" class="search-form">
  <label><input type="text" value="" name="s" id="s" placeholder="Поиск по сайту .." class="search-form__input" >
  </label>
  <button type="submit" class="search-form__btn"></button>
</form>


Всё заработало. Теперь поиск работает на всех страницах!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Legal2019
Всё в имени моём... и радость и печаль...
Посмотрите реализацию в любой теме ВП поиска. У него обычно несколько файлов есть (когда что-то найдено, не найдено).
В нужном месте вставьте:
<?php get_search_form(); ?>
А по сути тут всё хорошо описано.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы