Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

ddmx

Новичок
  
  • Публикаций

    10
  • Зарегистрирован

  • Посещение

Посетители профиля

1 784 просмотра профиля

Достижения ddmx

Newbie

Newbie (1/14)

  • First Post
  • Collaborator
  • Week One Done
  • One Month Later
  • One Year In

Последние медали

0

Репутация

  1. ddmx

    CoolFilter [Поддержка]

    В coolfilter.tpl замените: function setUrl(coolfilter) { var href = location.href; var exp = /(\?|\&)coolfilter=(.*)?(&|$)/g; href = href.replace(exp, ""); if (coolfilter) { href += '&coolfilter=' + coolfilter; } location = href; } на function setUrl(coolfilter) { var href = location.href; var exp = /(\?|\&)coolfilter=(.*)?(&|$)/g; var expage = /(\?|\&)page=(.*)?(&|$)/g; href = href.replace(exp, ""); href = href.replace(expage, ""); if (coolfilter) { href += '&coolfilter=' + coolfilter; } location = href; }
  2. ddmx

    Уменьшить глубину поиска

    лучше сделать так:1) в функции getProducts(); if (!empty($data['filter_name'])) { $implode = array(); $words = explode(' ', $data['filter_name']); $words = array_filter(array_unique($words), 'strlen'); foreach ($words as $word) { if (!empty($data['filter_description'])) { $implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' OR LCASE(pd.description) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'"; } else { $implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'"; } } if ($implode) { $sql .= " " . implode(" OR ", $implode) . ""; } } заменить if ($implode) { $sql .= " " . implode(" OR ", $implode) . ""; } на if ($implode) { $sql .= " " . implode(" AND ", $implode) . ""; } 2)И в функции getTotalProducts(); if (!empty($data['filter_name'])) { $implode = array(); $words = explode(' ', $data['filter_name']); foreach ($words as $word) { if (!empty($data['filter_description'])) { $implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' OR LCASE(pd.description) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'"; } else { $implode[] = "LCASE(pd.name) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%'"; } } if ($implode) { $sql .= " " . implode(" OR ", $implode) . ""; } } заменить if ($implode) { $sql .= " " . implode(" OR ", $implode) . ""; } на if ($implode) { $sql .= " " . implode(" AND ", $implode) . ""; } В итоге будет искать по 100% совпадению + воспринимает любой порядок слов . что бы найти "Велосипед Stels 410" можно вводить "410 Stels" , " велосипед 410" и.т.д.
×
×
  • Создать...

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

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