Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Вопрос? Поиск в определенной категории с помощью field search

Тема в разделе "Вопросы- ответы", создана пользователем Burial, 5 авг 2018.

05.08.18 в 16:10
07.08.18 в 10:29
20
886
0
  1. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Решил заменить стандартный поиск у шаблона на Field Search. Не могу разобраться, как в форме указать категории, по которым надо искать. Сейчас такая форма:
    Код:
                        <form data-filtertriger="fieldseacrh">
                            <div class="search-field">
                                <input type="text" placeholder="Введите слово для поиска" type="text" />
                                <button type="button" data-fieldsearch="submit"><span class="fa fa-video-camera"></span></button>
                            </div>
                        </form>
    Есть такой пример из инструкции, но здесь выпадающий список.
    Код:
    <select name="cat" multiple>
      <option value="1"> Информация </option>
      <option value="2"> Новости </option>
    </select>
     
  2. Анна

    PRO Users

    Регистрация:
    10 дек 2015
    Сообщения:
    1.041
    Лучших ответов:
    5
    Рейтинги:
    +493 / 14 / -0
    Так стандартный поиск, насколько помню, в движок засунут. Это не файлы шаблона править нужно
     
  3. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Мне не нужен стандартный поиск. Речь о модуле...
     
  4. Анна

    PRO Users

    Регистрация:
    10 дек 2015
    Сообщения:
    1.041
    Лучших ответов:
    5
    Рейтинги:
    +493 / 14 / -0
    Значит убирай его форму, ставь модуль и подгоняй по дизайну
     
  5. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    При чем здесь форма и дизайн ? )) Модуль стоит, дизайн настроен. Речь об условиях тут.
     
  6. Анна

    PRO Users

    Регистрация:
    10 дек 2015
    Сообщения:
    1.041
    Лучших ответов:
    5
    Рейтинги:
    +493 / 14 / -0
    Значит пиши так, чтробы тебя люлди понимали. ты даешь пример формы поиска, который из движка. И пишешь о том, что тебе нужно заменить его на модуль. Я лично тебя понимаю так: ты хочешь из формы в первом посте сделать поиск через модуль. А если у тебя вопрос только по модулю, то так и задавай его. Какое отношение форма поиска имеет к модулю?
     
  7. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Анна, Ты для чего тут пишешь всю эту ересь? Всю тему засрала. Все конкретно написано. Если не понимаешь о чем речь, не отвечай больше тут. Нужно только прописать в нем условие для поиска по категориям.
    И где ты видишь код формы из движка?
    Вот тебе из движка. Сравнивай.
    Код:
                        <form id="quicksearch" method="post">
                            <input type="hidden" name="do" value="search" />
                            <input type="hidden" name="subaction" value="search" />
                            <div class="search-field">
                                <input id="story" name="story" placeholder="Введите слово для поиска" type="text" />
                                <button type="submit"><span class="fa fa-search"></span></button>
                            </div>
                        </form>
     
  8. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Я ведь писал, в документации все есть.
    Код:
    <input type="hidden" name="ocat" value="1,2,3,4">
     
  9. Анна

    PRO Users

    Регистрация:
    10 дек 2015
    Сообщения:
    1.041
    Лучших ответов:
    5
    Рейтинги:
    +493 / 14 / -0
    А я тебе еще раз хочу сказать: если у тебя с выражением своих мыслей не лады, то это твои проблемы. Ты пишешь, что хочешь поменять стандартный поиск на модуль, на что я тебе ответила, что это не возможно. А если у тебя проблемы с настройкой модуля, то так и напиши и тебя понимать будут лучше. Ты даже в инструкции к модулю разобраться не можешь, что уж говорить об остальном. Сам пишешь ересь, потом ждешь помощи, потом наезжаешь на людей, готовых тебе помочь, а в конце концов ты молодец. Вот после таких как ты никому потом бесплатно вообще помогать не хочется!
     
  10. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    PunPun. Вот так? Так не ищет.
    Код:
                        <form data-filtertriger="fieldseacrh">
                            <div class="search-field">
                                <input type="hidden" name="ocat" value="51">
                                <input type="text" placeholder="Введите слово для поиска"/>
                                <button type="button" data-fieldsearch="submit"><span class="fa fa-video-camera"></span></button>
                            </div>
                        </form>
    В адресной строке ссылка вида сайт.ру/?ocat=51
     
  11. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Когда на кнопку нажимаешь?
     
  12. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Да. Появляется аякс кружок и все. Страница как бы обновляется и ссылка в адресной строке имеет такой вид. Я пробовал такой метод и другие варианты до создания темы еще.
    А вообще происходит так: Нажимаю поиск, на мгновение появляется категория 51 с новостями и снова главная страница. Если перейти в категорию 51, ввести слово, нажать поиск, кидает на главную страницу
     
  13. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Заменить код в файле main_field.js на этот
    Код:
    /*
    =====================================================
    Field Search 7.0
    -----------------------------------------------------
    Author: PunPun
    -----------------------------------------------------
    Site: http://сайт lazydev/
    -----------------------------------------------------
    Copyright (c) 2018 PunPun
    =====================================================
    */
    
    $(function() {
        $("body").on('click', '#goShowNews', function(event) {
            event.preventDefault();
            var $filter_field = $('#fieldseacrh').serialize();
    
            ShowLoading("Поиск...");
            
            $.post(dle_root + "engine/mod_punpun/field_search/ajax/field_search.php", {form_field : $filter_field, page_url: back_url}, function(data) {
                if(data) {
                    var content = jQuery.parseJSON(data);
                    HideLoading("");
                    window.location.href = content.url;
                }
            });
            
            HideLoading("");
        });
    });
    Использовать эту форму
    HTML:
    <form data-filtertriger="fieldseacrh" id="fieldseacrh">
        <div class="search-field">
            <input type="hidden" name="ocat" value="51">
            <input type="text" id="filterInput" placeholder="Введите слово для поиска"/>
            <button type="button" id="goShowNews" data-fieldsearch="submit"><span class="fa fa-video-camera"></span></button>
        </div>
    </form>
    После тега {ajax} вставить
    Код:
    <script>
    $(function() {
    $('#filterInput').keypress(function(event) {
    if (event.keyCode === 10 || event.keyCode === 13) {
    event.preventDefault();
    return;
    }
    });
    });
    </script>
     
    • Нравится Нравится x 1
  14. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    PunPun, Сделал. Такой проблемы нет:
    Но новость не находит, даже с точным указанием заголовка. Просто выводит все новости из категории 51.
     
  15. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Может потому что нужно для input text указать параметр? name="l.title"
     
    • Нравится Нравится x 1
  16. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Да, нужно было ) Спасибо!
    Вот, только, у меня перестал искать по кнопке Enter, после правки js.
     
  17. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    И все таки я не могу понять, почему ищет в тех категориях в которых не указан ID категории в форме?
    Например:
    Код:
        <div class="search-field">
            <input type="hidden" name="ocat" value="1,2,3,4,5,6,7,8,9,10">
            <input name="tsn" value="shortstory" type="hidden">
            <input type="text" name="l.title" id="filterInput" placeholder="Введите слово для поиска"/>
            <button type="button" data-fieldsearch="submit"><span class="fa fa-video-camera"></span></button>
    Выдает новости из категорий с 1 по 10, а также выдает новости из 11 категории.
    Захожу в категорию 12, нажимаю поиск нужной новости из этой категории, но выдает новости из категории с 1 по 10, + опять выдает новости из 11 категории. Должно же вообще ничего не найдено быть? В форме же не указана категория 12, и даже 11.
     
  18. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Короче ни с того ни с сего вообще перестал работать. Просто кружок аякс постоянно грузится и все. Ничего не трогал со вчерашнего дня. Вчера хоть топорно искал, сегодня вообще перестал.
     
  19. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.299
    Лучших ответов:
    31
    Рейтинги:
    +3.898 / 96 / -0
    Просто так ничего не бывает.
     
    • Согласен Согласен x 2
    • Нравится Нравится x 1
  20. TopicStarter Overlay
    Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.911
    Лучших ответов:
    2
    Рейтинги:
    +445 / 70 / -0
    Заработал фильтр. Дело опять в cloudflare было :D. Отключил на время его.
    А перечислить категории через дефис нельзя?
    Вот так ищет
    Код:
    <input type="hidden" name="ocat" value="1,2,3,4,5,6,7,8,9,10">
    Вот так нет
    Код:
    <input type="hidden" name="ocat" value="1-10">
    Код:
    <input type="hidden" name="ocat" value="1,2,3,4,5-10">
     
Яндекс.Метрика