Полнотекстовый поиск для сайта OpenCart используя PHP + MySQL

Сегодня хочу рассказать о реализации полнотекстового поиска на проекте, «в ядре» которого используется OpenCart. Почему «в ядре», да потому, что 60% там переписано. Но, ближе к теме)

Технология поиска
В качестве технологии для полнотекстового поиска будем использовать FULLTEXT индекс таблицы MyISAM MySQL.
Я не буду расписывать полностью готовый и рабочий пример. Скорее опишу саму технологию, так сказать подход к решению задачи.

Описание задачи
Есть большое количество товара, в данном случае репродукции картин. У них есть параметры, назову их ключи поиска:
  • название работы,
  • автор,
  • категории,
  • теги.
Нужно реализовать полнотекстовый поиск по этим полям. Как дополнение, если полнотекстовый поиск не дал результатов то нужно выполнить поиск вхождения искомой строки в том же множестве ключей.


Реализация задачи