Перейти к содержанию
regau

Не работает поиск в шапке

Рекомендуемые сообщения

Перестал работать поиск в шапке. В чём может быть дело? При этоп доп.поиск работает

 

 

 

 

http://pandasale.ru/

 

 

 

 

 

search.tpl

 

Спойлер

<?php echo $header; ?>


  <!-- ---------------------- -->

  <!--     I N T R O          -->

  <!-- ---------------------- -->

  <div id="intro">

    <div id="intro_wrap">

      <div class="s_wrap">

        <div id="breadcrumbs" class="s_col_12">

          <?php foreach ($breadcrumbs as $breadcrumb): ?>

          <?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>

          <?php endforeach; ?>

        </div>

        <h1><?php echo $heading_title; ?></h1>

      </div>

    </div>

  </div>

  <!-- end of intro -->


  <!-- ---------------------- -->

  <!--      C O N T E N T     -->

  <!-- ---------------------- -->

  <div id="content" class="s_wrap">


    <?php if ($tbData->common['column_position'] == "left" && $column_right): ?>

    <div id="left_col" class="s_side_col">

    <?php echo $column_right; ?>

    </div>

    <?php endif; ?>


    <div id="search_results" class="s_main_col">


      <?php echo $content_top; ?>


      <span class="clear"></span>


      <?php $tbSlot->start('product\search.adv_search_box'); ?>

      <div id="adv_search_box">

        <h2><?php echo $text_critea; ?></h2>

        <div class="s_mb_0 clearfix">

          <input id="search_input" type="text" name="filter_name" class="filter_keyword s_sep"<?php if ($filter_name):?> value="<?php echo $filter_name; ?>"<?php endif; ?> size="50" />

          <select name="filter_category_id" id="filter_category_id" class="s_sep">

            <option value="0"><?php echo $text_category; ?></option>

            <?php foreach ($categories as $category_1): ?>

              <?php if ($category_1['category_id'] == $filter_category_id): ?>

              <option value="<?php echo $category_1['category_id']; ?>" selected="selected"><?php echo $category_1['name']; ?></option>

              <?php else: ?>

              <option value="<?php echo $category_1['category_id']; ?>"><?php echo $category_1['name']; ?></option>

              <?php endif; ?>

              <?php foreach ($category_1['children'] as $category_2): ?>

                <?php if ($category_2['category_id'] == $filter_category_id): ?>

                <option value="<?php echo $category_2['category_id']; ?>" selected="selected">      <?php echo $category_2['name']; ?></option>

                <?php else: ?>

                <option value="<?php echo $category_2['category_id']; ?>">      <?php echo $category_2['name']; ?></option>

                <?php endif; ?>

                <?php foreach ($category_2['children'] as $category_3): ?>

                  <?php if ($category_3['category_id'] == $filter_category_id): ?>

                  <option value="<?php echo $category_3['category_id']; ?>" selected="selected">            <?php echo $category_3['name']; ?></option>

                  <?php else: ?>

                  <option value="<?php echo $category_3['category_id']; ?>">            <?php echo $category_3['name']; ?></option>

                  <?php endif; ?>

                <?php endforeach; ?>

              <?php endforeach; ?>

            <?php endforeach; ?>

          </select>

          <a class="s_button_1 s_button_1_small s_main_color_bgr search_button"><span class="s_text"><?php echo $button_search; ?></span></a>

        </div>


        <span class="clear"></span>


        <div class="s_row_3 clearfix">

          <label class="s_checkbox" for="filter_sub_category"><input type="checkbox" name="filter_sub_category" value="1" id="filter_sub_category"<?php if ($filter_sub_category): ?> checked="checked"<?php endif; ?> /> <?php echo $text_sub_category; ?></label>

          <label class="s_checkbox">

            <input type="checkbox" name="filter_description" value="1" id="filter_description"<?php if ($filter_description): ?> checked="checked"<?php endif; ?> />

            <?php echo $entry_description; ?>

          </label>

        </div>


      </div>

      <?php $tbSlot->stop(); ?>


      <h2><?php echo $text_search; ?></h2>


      <?php $products = $tbSlot->filter('product\search.filter_products', $products, array('data' => $this->data)); ?>

      <?php $tbSlot->start('product\search.products_listing', array('products' => $products, 'data' => $this->data)); ?>

      <?php if ($products): ?>


      <div id="listing_options">

        <div id="listing_arrange">

          <span class="s_label"><?php echo $text_sort; ?></span>

          <div id="listing_sort" class="s_switcher">

            <?php foreach ($sorts as $sortss): ?>

              <?php if (($sort . '-' . $order) == $sortss['value']): ?>

                <span class="s_selected"><?php echo $sortss['text']; ?></span>

              <?php endif; ?>

            <?php endforeach; ?>

            <ul class="s_options" style="display: none;">

            <?php foreach ($sorts as $sortss): ?>

              <?php if (($sort . '-' . $order) != $sortss['value']): ?>

                <li><a href="<?php echo $sortss['href']; ?>"><?php echo $sortss['text']; ?></a></li>

              <?php endif; ?>

            <?php endforeach; ?>

            </ul>

          </div>

          <span class="s_label"><?php echo $text_limit; ?></span>

          <div id="items_per_page" class="s_switcher">

            <?php foreach ($limits as $limitss): ?>

              <?php if ($limit == $limitss['value']): ?>

                <span class="s_selected"><?php echo $limitss['text']; ?></span>

              <?php endif; ?>

            <?php endforeach; ?>

            <ul class="s_options" style="display: none;">

            <?php foreach ($limits as $limitss): ?>

              <?php if ($limit != $limitss['value']): ?>

                <li><a href="<?php echo $limitss['href']; ?>"><?php echo $limitss['text']; ?></a></li>

              <?php endif; ?>

            <?php endforeach; ?>

            </ul>

          </div>

        </div>

        <div id="view_mode" class="s_nav">

          <ul class="clearfix">

            <li id="view_grid"<?php if($tbData->product_listing_type == 'grid') echo ' class="s_selected"';?>>

              <a href="<?php echo $this->url->link('product/search', 'filter_name=' . $filter_name . '&setListingType=grid'); ?>" rel="nofollow">

                <span class="s_icon"></span><?php echo $tbData->text_grid; ?>

              </a>

            </li>

            <li id="view_list"<?php if($tbData->product_listing_type == 'list') echo ' class="s_selected"';?>>

              <a href="<?php echo $this->url->link('product/search', 'filter_name=' . $filter_name . '&setListingType=list'); ?>" rel="nofollow">

                <span class="s_icon"></span><?php echo $tbData->text_list; ?>

              </a>

            </li>

          </ul>

        </div>

        <?php if ($tbData->common['compare_enabled']): ?>

        <div>

          <a href="<?php echo $compare; ?>" id="compare_total" class="s_main_color"><?php echo $text_compare; ?></a>

        </div>

        <?php endif; ?>

      </div>


      <div class="clear"></div>


      <div class="s_listing <?php if ($tbData->product_listing_type == 'list'): ?>s_list_view<?php  else: ?>s_grid_view<?php endif; ?> <?php echo $tbData->common['products_per_row']; ?> clearfix">

        <?php foreach ($products as $product): ?>

        <?php $tbSlot->start('product\search.products.each', array('products' => $products, 'product' => $product, 'data' => $this->data)); ?>

        <div class="s_item product_<?php echo $product['product_id']; ?>">

          <a class="s_thumb" href="<?php echo $product['href']; ?>">

            <img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" />

          </a>

          <div class="s_item_info">

            <h3><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h3>

            <?php if ($product['price']): ?>

            <div class="s_price_holder s_size_<?php echo $tbData->common['price_size']; ?> <?php echo 's_' . $tbData->common['price_design']; ?>">

              <?php if (!$product['special']): ?>

              <p class="s_price"><?php echo $tbData->priceFormat($product['price']); ?></p>

              <?php else: ?>

              <p class="s_price s_promo_price"><span class="s_old_price"><?php echo $tbData->priceFormat($product['price']); ?></span><?php echo $tbData->priceFormat($product['special']); ?></p>

              <?php endif ?>

            </div>

            <?php endif; ?>

            <p class="s_description"><?php echo utf8_substr($product['description'], 0, 250); ?>...</p>

            <?php if ($product['rating']): ?>

            <p class="s_rating s_rating_5">

              <span style="width: <?php echo $product['rating'] * 2 ; ?>0%;" class="s_percent"></span>

            </p>

            <?php endif; ?>

            <?php if ($tbData->common['checkout_enabled'] || $tbData->common['wishlist_enabled'] || $tbData->common['compare_enabled']): ?>

            <div class="s_actions">

              <?php if ($product['price']): ?>

              <?php if ($tbData->common['checkout_enabled']): ?>

              <a class="s_button_add_to_cart" href="javascript:;" onclick="addToCart('<?php echo $product['product_id']; ?>');">

                <span class="s_icon_16"><span class="s_icon"></span><?php echo $button_cart; ?></span>

              </a>

              <?php endif; ?>

              <?php endif; ?>

              <?php if ($tbData->common['wishlist_enabled']): ?>

              <a class="s_button_wishlist s_icon_10" onclick="addToWishList('<?php echo $product['product_id']; ?>');"><span class="s_icon s_add_10"></span><?php echo $tbData->text_wishlist; ?></a>

              <?php endif; ?>

              <?php if ($tbData->common['compare_enabled']): ?>

              <a class="s_button_compare s_icon_10" onclick="addToCompare('<?php echo $product['product_id']; ?>');"><span class="s_icon s_add_10"></span><?php echo $tbData->text_compare; ?></a>

              <?php endif; ?>

            </div>

            <?php endif; ?>

          </div>

        </div>

        <?php $tbSlot->stop(); ?>

        <?php endforeach; ?>

        <span class="clear"></span>

      </div>


      <div class="pagination">

        <?php echo $pagination; ?>

      </div>


      <?php else: ?>


      <p class="align_center s_f_16 s_sep s_p_20_0"><?php echo $text_empty; ?></p>


      <?php endif; ?>

      <?php $tbSlot->stop(); ?>


      <?php echo $content_bottom; ?>


    </div>


    <?php if ($tbData->common['column_position'] == "right" && $column_right): ?>

    <div id="right_col" class="s_side_col">

    <?php echo $column_right; ?>

    </div>

    <?php endif; ?>


    <script type="text/javascript">

    $('#content input[name=\'filter_name\']').keydown(function(e) {

      if (e.keyCode == 13) {

        $('#adv_search_box a.search_button').trigger('click');

      }

    });


    $('#adv_search_box a.search_button').bind('click', function() {

      url = 'index.php?route=product/search';


      var filter_name = $('#adv_search_box input.filter_keyword').attr('value');

      if (filter_name) {

        url += '&filter_name=' + encodeURIComponent(filter_name);

      }


      var filter_category_id = $('#filter_category_id').attr('value');

      if (filter_category_id > 0) {

        url += '&filter_category_id=' + encodeURIComponent(filter_category_id);

      }


      var filter_sub_category = $('#filter_sub_category:checked').attr('value');

      if (filter_sub_category) {

        url += '&filter_sub_category=true';

      }


      var filter_description = $('#filter_description:checked').attr('value');

      if (filter_description) {

        url += '&filter_description=true';

      }


      location = url;

    });


    </script>


  </div>

  <!-- end of content -->



<?php echo $footer; ?> 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решено. Косяк в путях шаблона шопики

у меня наоборот проблема..вверху работает в доп поиск нет..кнопку искать жму и тишина..где искать косяк?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а у меня в дефолтной теме в шапке почему-то не работает, не могу понять в чем проблема....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Короче в файле catalog/..../template/product/search.tpl - скрипт поиска будет обрабатываться если поиск находится в <div id="content"></div>

 

У меня в шапке не работал поиск, а дополнительный работал, обернул в этот див и все завертелось, закрутилось, но только работает по нажатию на enter, теперь там же в коде смотрю что с кнопкой не так.

 

v ocstore 2.3.0.2.3

 

PS: вдруг кому поможет, а то по opencart мало вообще ничтяков, мое мнение что эта cms самая беспонтовая

Снимок экрана 2018-11-07 в 22.09.58.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решено!!!

Поиск в шапке при клике по кнопке НЕ реагировал, по клику на энтер работал!!

 

Так как шаблон я переделывал под себя, удалив всякую каку, заметил:

 

В коммон.жс в функции запуска поиска по клику на кнопку написал

 

alert('клик был');

обновил, посмотрел, нихрена.

Пошел в оригинальный header.tpl с коробки и обнаружил что там с**а подключается этот самый common.js

Хотя при нажатии на энтер он работал, странно, хз

Подключил этот common.js в своем header.tpl. Перезалил, обновил, чекнул и все работает!

 

Теперь проблема номер 3 - почему-то на странице поиск который, работает и по энтер, и по клику, но значение с ближайшего поля не берет, а берет значение с поля в хэдэре.

 

CMS я уже писал что стремная, но как разберусь надеюсь с последней проблемой отпишусь.

 

Вдруг кому помогаю!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добил этот поиск!!!!!!!!!!!!!!

Мать Вашу, opencart developers!

В общем в файле search.tpl заметил, что в скрипте внизу значение реально берется из поля поиска, который находится в div#content

В шаблоне #content вроде был один и в нужном месте, разбираться долго не стал и решил эксперимент провести.

 

 В search.tpl  где идет блок div.row с полем поиска к row добавил класс fuckme

 

В этом же файле в скрипте снизу (скрипт приложил) добавил к #content класс .fuckme и все засияло и заработало - теперь и там и там поиск работает и по кнопке и по энтеру ПЗДЦ

 

Спойлер
Цитата

 

$('#button-search').bind('click', function() {
    url = 'index.php?route=product/search';

    var search = $('#content .fuckme input[name=\'search\']').prop('value');

    if (search) {
        url += '&search=' + encodeURIComponent(search);
    }

    var category_id = $('#content .fuckme select[name=\'category_id\']').prop('value');

    if (category_id > 0) {
        url += '&category_id=' + encodeURIComponent(category_id);
    }

    var sub_category = $('#content .fuckme input[name=\'sub_category\']:checked').prop('value');

    if (sub_category) {
        url += '&sub_category=true';
    }

    var filter_description = $('#content .fuckme input[name=\'description\']:checked').prop('value');

    if (filter_description) {
        url += '&description=true';
    }

    location = url;
});

$('#content .fuckme input[name=\'search\']').bind('keydown', function(e) {
    if (e.keyCode == 13) {
        $('#button-search').trigger('click');
    }
});

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
13 минут назад, Blackseabreathe сказал:

CMS я уже писал что стремная, но как разберусь надеюсь с последней проблемой отпишусь.

 

А причем тут cms?

Может стоит для начала изучить основы jquery? Тогда станет Вам более понятно почему не работало  ;-)

 

18 минут назад, Blackseabreathe сказал:

Так как шаблон я переделывал под себя, удалив всякую каку, заметил:

 

И это тоже кстати повлияло, почему дефолтный js opencart-a перестал у Вас работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Вы комментируете как гость. Если у вас есть аккаунт, пожалуйста, войдите
Ответить в этой теме...

×   Вы вставили контент с форматированием.   Удалить форматирование

  Разрешено использовать не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От magzhan9292
      Скачать/Купить дополнение


      Noticeup Livesearch/Живой поиск
      Модуль для создание живого, красивого, быстрого, удобного поиска на сайте.
       
      Модуль Noticeup Livesearch позволяет моментально выводить результаты прямо в поисковой строке. Модуль создан с помощью тщательно проверенных плагина jquery что является плюсом, зашкаливает кросбраузерность, также имеется кэширование запросов что влияет на быстроту. Модуль использует модификаторы (лёгкая и безопасная установка), что исключает поломку или сбой системы после установки.
       
      Можно
      Выводить фото, наименования, модель, производителей, цен Указать с какого символа начнется поиск элементов Указать количество элементов в поиске Сгруппировывать по производителям Так же легко можно поменять дизайн выводимых элементов по своему вкусу (путь указан в дополнении)  
      Установка
      зайти в Панель управления -> Модули -> Установка расширений установить модуль перейти в Панель управления -> Модули -> Модификаторы обновить и активировать модификатор Активируйте модуль если того требует система Модуль совместим со всеми темами по-умолчанию (при возникновении трудностей с установкой напишите нам и мы обязательно поможем)
       
      Тестировался на версии
      Opencart 3.0.2.0 Opencart 2.3.0.2 Opencart 2.2.0.0 Opencart 2.1.0.1 Opencart 2.0.1.0 Ocstore 2.3.0.2  
      Любые идеи для улучшения модуля приветствуется
      Обсуждения проекта находиться здесь
       
      Добавил magzhan9292 Добавлено 19.11.2017 Категория Поиск Системные требования Сайт разработчика noticeup.kz Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось Обращение к серверу разработчика  
    • От magzhan9292
      Модуль для создание живого, красивого, быстрого, удобного поиска на сайте.
       
      Модуль Noticeup Livesearch позволяет моментально выводить результаты прямо в поисковой строке. Модуль создан с помощью тщательно проверенных плагина jquery что является плюсом, зашкаливает кросбраузерность, также имеется кэширование запросов что влияет на быстроту. Модуль использует модификаторы (лёгкая и безопасная установка), что исключает поломку или сбой системы после установки.
       
      Можно
      Выводить фото, наименования, модель, производителей, цен Указать с какого символа начнется поиск элементов Указать количество элементов в поиске Сгруппировывать по производителям Так же легко можно поменять дизайн выводимых элементов по своему вкусу (путь указан в дополнении)  
      Установка
      зайти в Панель управления -> Модули -> Установка расширений установить модуль перейти в Панель управления -> Модули -> Модификаторы обновить и активировать модификатор Активируйте модуль если того требует система Модуль совместим со всеми темами по-умолчанию (при возникновении трудностей с установкой напишите нам и мы обязательно поможем)
       
      Тестировался на версии
      Opencart 3.0.2.0 Opencart 2.3.0.2 Opencart 2.2.0.0 Opencart 2.1.0.1 Opencart 2.0.1.0 Ocstore 2.3.0.2  
      Любые идеи для улучшения модуля приветствуется
      Обсуждения проекта находиться здесь
       
    • От ocdroid
      300.00 руб
      Скачать/Купить дополнение


      Now searhcing | Сейчас ищут
      При клике на строке поиска, под ней появляется виджет с 10-ю последними поисковыми запросами.
      Установка стандартная.
      Языки: en-gb, pl-pl, uk-ua, ru-ru
       
      Demo
       
      = = = TODO = = =
      группирование успешных запросов (например - Apple[3]) фильтр по эффективности (поиск с нулевым результатом etc)  
      Добавил ocdroid Добавлено 11.03.2019 Категория Поиск Системные требования Сайт разработчика Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop Не проверялось Обращение к серверу разработчика Нет  
    • От ocdroid
      При клике на строке поиска, под ней появляется виджет с 10-ю последними поисковыми запросами.
      Установка стандартная.
      Языки: en-gb, pl-pl, uk-ua, ru-ru
       
      Demo
       
      = = = TODO = = =
      группирование успешных запросов (например - Apple[3]) фильтр по эффективности (поиск с нулевым результатом etc)  
    • От 0PENCARTsu
      Быстрый / живой поиск товаров (Search / Quick / Live / Easy / Realtime for Opencart 2.x)
      v.1.01 (05.01.2017)
      Добавлена настройка - Обрезка имени товара..., если оно превышает указанное кол-во символов в быстром/живом поиске.
      Добавлена возможность показать все результаты поиска.
      Добавлена инструкция для ручной установки, если автоматический инсталятор не работает.
      Поддержка всех последних версий OpenCart, OcStore 2.x
      -----------------------------------
      v.1.0 (20.09.2015)
      Добавлена настройка - Включение/Отключение модуля.
      Добавлена настройка - Включение/Отключение вывода картинок в быстром/живом поиске.
      Добавлена настройка - Ширина и Высота выводимых картинок в быстром/живом поиске.
      Добавлена настройка - Вывод цены товара в быстром/живом поиске.
      Добавлена настройка - Вывод остатка товара в быстром/живом поиске.
      Добавлена настройка - Максимальное кол-во(лимит) выводимых строк в быстром/живом поиске.
      -----------------------------------
      Модуль Быстрый/живой поиск товаров позволяет моментально выводить результаты прямо в поисковой строке (во время ввода поискового запроса производится автозаполнение и вывод поисковых результатов)
      Быстрый/живой поиск товаров реализован благодаря технологиям ajax, jquery.ui, autocomplete.
      Тип модуля OCMOD (модификатор) - лёгкая и безопасная установка без вмешательства в систему (никаких прямых изменений в систему не вносится), что исключает поломку или сбой системы после установки. В случае какой либо ошибки после установки, Вы можете отключить модуль (модификатор) и система откатится в исходное/рабочее состояние.
      Полностью открытый код, 100% гарантия безопасности модуля (если приобретаете модуль от официального разработчика OpenCart.su).
      Демонстрация модуля:
      http://opencart.su/
      Панель администрирования модуля:
      http://opencart.su/admin/index.php?route=module/search_quick_opencartsu
      логин: demo
      пароль: demo
      Цена модуля: бесплатно (без обновлений и поддержки)
      Установка:
      1. Данный модуль устанавливается очень просто через Панель управления -> Модули -> Установка расширений. (перед загрузкой архива с модулем, убедитесь что в настройках включен FTP)
      2. После успешной загрузки модуля необходимо перейти в Панель управления -> Модули -> Модификаторы -> отметить галочкой модификатор Search_Quick/Live_Opencart_2x и нажать обновить (после чего модификатор будет активирован)
      3. Перейдите в Панель управления -> Модули -> Модули и активируйте модуль Search_Quick/Live_Opencart2 (Быстрый/живой поиск), нажав на +, после чего перейдите в настройки модуля и включите необходимые параметры.
      Настройка отображения модуля (css стилей) производится в файлах:
      catalog/view/javascript/style_search_quick_opencartsu.css
      catalog/view/javascript/jquery/ui/themes/base/jquery-ui-1.11.4.min.css
      Модуль совместим со всеми темами автоматически (благодаря модификатору OCMOD).
      Если У Вас возникли трудности с установкой модуля под Вашу тему, напишите нам и мы обязательно поможем.
      Любые вопросы по модулю отправляйте на opencartsu@mail.ru
      Модуль на официальном сайте: http://www.opencart.com/index.php?route=extension/extension/info&extension_id=23962
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.