Перейти к содержанию
Официальный форум поддержки Simpla

Поиск по описанию товара


Перейти к решению Решено Виталий Анатольевич,

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

  • Решение

api/Products.php примерно 93 строка

		if(!empty($filter['keyword']))
		{
			$keywords = explode(' ', $filter['keyword']);
			foreach($keywords as $keyword)
				$keyword_filter .= $this->db->placehold('AND (p.name LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.meta_keywords LIKE "%'.mysql_real_escape_string(trim($keyword)).'%") ');
		}

 

изменяем на 

		if(!empty($filter['keyword']))
		{
			$keywords = explode(' ', $filter['keyword']);
			foreach($keywords as $keyword)
				$keyword_filter .= $this->db->placehold('AND (p.name LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.meta_keywords LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.annotation LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.body LIKE "%'.mysql_real_escape_string(trim($keyword)).'%") ');
		}

 

так же можно добавить все что угодно

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

Видимо, тем, что относится к фильтру по рекомендованным товарам и к поставленной задаче - поиск по свойству - совсем никаким боком не относится...

Вместо того чтобы оспаривать чужое (не правильное) решение и разводить ни кому не нужный базар лучше бы помогли ТС.
Ссылка на сообщение
Поделиться на другие сайты

опять базар-вокзал.... 

а где у меня ошибка в решении? Я спросил для уточнения

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

 

Спасибо за пояснение. Но Я бы хотел услушать ответ от автора

Вы думаете он поймет как это применить? ТС нужно готовое решение.

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

api/Products.php примерно 93 строка

		if(!empty($filter['keyword']))
		{
			$keywords = explode(' ', $filter['keyword']);
			foreach($keywords as $keyword)
				$keyword_filter .= $this->db->placehold('AND (p.name LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.meta_keywords LIKE "%'.mysql_real_escape_string(trim($keyword)).'%") ');
		}

 

изменяем на 

		if(!empty($filter['keyword']))
		{
			$keywords = explode(' ', $filter['keyword']);
			foreach($keywords as $keyword)
				$keyword_filter .= $this->db->placehold('AND (p.name LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.meta_keywords LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.annotation LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.body LIKE "%'.mysql_real_escape_string(trim($keyword)).'%") ');
		}

 

так же можно добавить все что угодно

 

Добрый день!

 

Подскажите пожалуйста, как реализовать поиск по описанию.

Данный вариант не подходит, у меня строк по больше:

	if(!empty($filter['keyword']))
		{
			$keywords = explode(' ', $filter['keyword']);
			foreach($keywords as $keyword)
			{
				$kw = $this->db->escape(trim($keyword));
				if($kw!=='')
					$keyword_filter .= $this->db->placehold("AND (p.name LIKE '%$kw%' OR p.meta_keywords LIKE '%$kw%' OR p.id in (SELECT product_id FROM __variants WHERE sku LIKE '%$kw%'))");
			}
		}
Ссылка на сообщение
Поделиться на другие сайты

description  в Товаре нет

Есть body или annotation

Бесит разное название переменных в категории, товаре и странице, куда бы было правильнее сделать везде description чтобы н путать.

Добавить нужно OR p.body LIKE '%$kw%'

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

Бесит разное название переменных в категории, товаре и странице, куда бы было правильнее сделать везде description чтобы н путать.

Добавить нужно OR p.body LIKE '%$kw%'

 

Спасибо большое))) Все работает!  

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

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

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

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

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

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

Загрузка...
×
×
  • Создать...