• Решено Сергей

    (@sergey17)


    Добрый день!

    При вводе поискового запроса на моем сайте, после обработки он не сбрасывается, а остается активным, так что следующий запрос вводится внутрь текста первого. Например: «Запрос1» — «Запрос1Запрос2» или «ЗаЗпрапорс1ос2» (короче, откуда начнешь ввод запроса, та неразбериха и получится). В Службе поддержки Темы мне ответили, что это ошибка на стороне Вордпресс и они ничего сделать не могут.

    В связи с этим вопрос: Как настроить код таким образом, чтобы поисковый запрос после вывода результата сбрасывался, и новый запрос можно было бы вводить в пустое поисковое поле?

    Вот код из файла searchform.php:

    <?php

    $searchlabel = apply_filters( 'unos_search_label', __( 'Search', 'unos' ) ); $searchplaceholder = apply_filters( 'unos_search_placeholder', __( 'Type Search Term &hellip;', 'unos' ) );
    $searchsubmit = apply_filters( 'unos_search_submit', __( 'Search', 'unos' ) );
    $searchquery = get_search_query();

    echo '<div class="searchbody">';
    echo '<form method="get" class="searchform" action="' . esc_url( home_url( '/' ) ) . '" >';
    echo '<label class="screen-reader-text">' . esc_html( $searchlabel ) . '</label>';
    echo '<i class="fas fa-search"></i>';
    echo '<input type="text" class="searchtext" name="s" placeholder="' . esc_attr( $searchplaceholder ) . '" value="' . esc_attr( $searchquery ) . '" />';
    echo '<input type="submit" class="submit" name="submit" value="' . esc_attr( $searchsubmit ) . '" /><span class="js-search-placeholder"></span>';
    echo '</form>';

    echo '</div><!-- /searchbody -->';

    Заранее благодарю за ответ!

Просмотр 5 ответов — с 1 по 5 (всего 5)
  • sergey17, привет. Проблемой WordPress это быть не может, потому что из коробки такой функциональности нет, и поиск работает штатно.

    Вы привели фрагмент какого-то кода на PHP, и там вижу проблему: а) переменная $searchquery избыточна; б) зачем-то заполняется атрибут value.

    Исправить можно так (если дело в коде PHP):

    $searchlabel       = apply_filters( 'unos_search_label', __( 'Search', 'unos' ) );
    $searchplaceholder = apply_filters( 'unos_search_placeholder', __( 'Type Search Term &hellip;', 'unos' ) );
    $searchsubmit = apply_filters( 'unos_search_submit', __( 'Search', 'unos' ) );

    echo '<div class="searchbody">';
    echo '<form method="get" class="searchform" action="' . esc_url( home_url( '/' ) ) . '" >';
    echo '<label class="screen-reader-text">' . esc_html( $searchlabel ) . '</label>';
    echo '<i class="fas fa-search"></i>';
    echo '<input type="text" class="searchtext" name="s" placeholder="' . esc_attr( $searchplaceholder ) . '" value="" />';
    echo '<input type="submit" class="submit" name="submit" value="' . esc_attr( $searchsubmit ) . '" /><span class="js-search-placeholder"></span>';
    echo '</form>';

    echo '</div><!-- /searchbody -->';

    Если визуально наложение текста повторяется в браузере, это может быть также проблемой в JS-скрипте, но вы указали только фрагмент PHP-кода, поэтому работаем только с этой версией.

    Автор Сергей

    (@sergey17)

    V3XX, приветствую! Благодарю! Это сработало! Только появилось одно лишнее поле Поиска.

    В общем картина такая: Вверху новое поле Поиска, в котором все работает как надо (благодаря Вам), а внизу старое поле, которое ведет себя криво, как прежде.

    Но к Вашему коду это не имеет отношения. Эта ошибка есть независимо. Раньше не замечал. Буду искать…

    Еще раз благодарю! Вы очень помогли!

    • Ответ изменён 1 месяц назад пользователем Сергей.
    Автор Сергей

    (@sergey17)

    Вопрос добил окончательно. Оказалось разработчики Темы зачем-то избыточно вставили дополнительный модуль Поиска, который выводился из папки Include. Разбираться не стал, просто удалил результат вывода. Теперь одно поле Поиска, которое работает как и хотел!

    Благодарю, V3XX!!!

    sergey17, рад, что вопрос решён. На здоровье 🙂

    З.Ы.: что за тема оформления, если не секрет?

    Автор Сергей

    (@sergey17)

    Добрый день, V3XX!

    Тема — Unos Magazine Vu. Вот их демо: https://demo.wphoot.com/unos-magazine-vu/

    Она дочерняя от Unos. Коды размазаны так по файлам и папкам, что волосы дыбом встают, но их дизайн единственный, который подошел под мои задачи.

Просмотр 5 ответов — с 1 по 5 (всего 5)

Для ответа на тему необходимо авторизоваться.