Лучший Ответ SmetDenis , 28 April 2014 - 17:50
Прошу прощения за долгий ответ.
Изначальный способ хранения в Zoo не дат делать поисковые запросы в базу данных.
"Индексация" обрабатывает и складывает информацию в более удобном варианте.
_n, _d, _s. - это постфиксы для разных типов данных (числовой, дата и строкой).
Если данные подходят под формат, то они конвертируются и отправляются в нужную ячейку. Затем можно искать по диапозону с помощью SQL запросов.
Поле цены имеет особый вариант хранения, в силу того что там есть такие доп поля как остатки, артикулы итд.
Это все хранится в #__zoo_jbzoo_sku, где каждая строка - это отдельная вариация цены.
При переиндексации все индексные таблицы удаляются через DROP TABLE
И создаются снова. Такой грубый метод позволяет решить две трудности
- Актуальный набор столбцов.
- Оптимизация хранения данных и индекса для всей таблицы.
Создание таблиц происходит в хелпере jbtable.php
Логика переиндексации находится в модели searchindex
Данные для индексации цены формируются в элементе цены jbpriceadvance
Наиболее рекомендованный способ, на мой взгляд - использовать API
http://forum.jbzoo.c...zy-dannyh-dlya/
Перейти к сообщению


Тема закрыта








