Я хочу программно создать категорию в папке данных моего модуля. Опция «Плоские категории» включена.
Когда я пытаюсь создать такую категорию:
$category
->setStoreId(0)
->setName('My category')
->setUrlKey('club-campaigns')
->setPath($rootCategory->getPath())
->setIsActive(1)
->setIsAnchor(1)
->setIncludeInMenu(1)
->addData($data)
->setCustomDesignApply(1)
->save();
Я получаю сообщение об ошибке, в котором говорится, что catalog_category_flat не существует. Итак, я знаю, что информация о категориях квартир хранится в таблице catalog_category_flat_store_storenumber. Я посмотрел в базе данных, и у меня есть следующие таблицы:
каталог_категория_квартирный_магазин_1
каталог_категория_квартирный_магазин_2
каталог_категория_квартирный_магазин_3
каталог_категория_квартирный_магазин_4
каталог_категория_квартирный_магазин_5
каталог_категория_квартирный_магазин_6
и я хочу создать категорию для магазина 6. Хорошо, теперь, если я сделаю так:
$category
->setStoreId(6)
->setName('My category')
->setUrlKey('club-campaigns')
->setPath($rootCategory->getPath())
->setIsActive(1)
->setIsAnchor(1)
->setIncludeInMenu(1)
->addData($data)
->setCustomDesignApply(1)
->save();
категория создается без ошибок, и она устанавливает информацию в catalog_category_flat_store_6, но если я зайду в admin>Manage Categories и не увижу свою созданную категорию.
Я думаю, что когда я создаю категорию, я должен установить идентификатор магазина администратора (0), чтобы я мог видеть его в панели администратора, но затем я получаю сообщение об ошибке выше, и если я создаю с магазином 6, я его не вижу в админ. Я действительно застрял.
Как я могу правильно создать свою категорию программно без проблем?