Magento CE 1.4 (также EE 1.8) представил новый атрибут для сущностей категории; include_in_menu
. Я проверил очень внимательно, и никакой код никогда не устанавливает его на что-либо, кроме «1». Значением по умолчанию является «1». Нет возможности контролировать это. И все же, когда некоторые из моих категорий исчезли из навигации, я обнаружил, что этот атрибут был очищен.
Я вижу, app/code/core/Mage/Catalog/Model/Resource/Eav/Mysql4/Category/Tree.php
добавляет фильтр для атрибута, это то, как значение читается. Конечно, если я принудительно очищу значение в базе данных, эти записи будут правильно отфильтрованы и исчезнут из внешнего интерфейса навигации.
С тех пор я сбросил все значения, и теперь он работает нормально. Однако я не понимаю, почему это пошло не так, и как предотвратить это снова. Кто-нибудь может предложить возможные причины?