Я не уверен, почему это не является частью стандартной функциональности Magento, но я хочу, чтобы клиенты могли искать настраиваемый продукт по дочернему SKU. По какой-то причине Magento не индексирует дочерние SKU.
Я нашел в app/code/core/Mage/CatalogSearch/Model/Resource/Fulltext.php
$dynamicFields = array(
'int' => array_keys($this->_getSearchableAttributes('int')),
'varchar' => array_keys($this->_getSearchableAttributes('varchar')),
'text' => array_keys($this->_getSearchableAttributes('text')),
'decimal' => array_keys($this->_getSearchableAttributes('decimal')),
'datetime' => array_keys($this->_getSearchableAttributes('datetime')),
);
Я пробовал несколько вариантов, безуспешно. Артикул — это «статический» атрибут, доступный через $this->_getSearchableAttributes('static')
. Я в порядке с получением всех статических атрибутов, но это не работает. В зависимости от того, какая попытка, я либо не получаю никаких изменений в результатах, либо выдает ошибку, что таблица статических атрибутов не существует (что имеет смысл, поскольку статические атрибуты находятся в таблице объектов продукта).
У кого-нибудь есть предложение решить эту проблему?
Онлайн-исследования нашли предложения добавить скрытый атрибут с этими значениями, но это не должно быть необходимо. Я предпочел бы решить проблему должным образом.