我實際上可以通過安裝腳本添加一個類別,但是由於某些原因,某些字段沒有正確設置。這裏是我的代碼如何通過安裝腳本添加類別到Magento?
$this->startSetup();
Mage::register('isSecureArea', 1);
$category = Mage::getModel('catalog/category');
$category->setPath('1/2') // set parent to be root category
->setName('Category Name')
->setUrlKey('category-name')
->setIsActive(0)
->setIncludeInMenu(1)
->setInfinitescroll(1)
->setDisplayMode('PAGE')
->setLandingPage($idToCmsBlock)
->setPageLayout('anotherLayoutThanDefault')
->setCustomUseParentSettings(0)
->setCustomLayoutUpdate('<reference name="head"><action method="addCss"><stylesheet>css/somecss.css</stylesheet></action></reference>')
->save();
$this->endSetup();
運行此腳本後,我有一個使用EAVs表中設置的所有值創建的類別。 但是,即使我重新編制扁平表,扁平表也會缺少displayMode,landingPage,pageLayout,customLayoutUpdate。
奇怪的是,如果我去管理員,我可以看到所有這些領域正確設置,但如果我在我的前臺去大多數這些領域被忽略。我將不得不去管理員,取消這些價值,並重新設置他們爲每個人正常工作。
也讓我說我使用setEnabled(1),我的類別將在管理中「啓用」,但不顯示在前端。
PS:我有平面類別激活,如果我禁用它似乎工作正常,但如果我重新索引它仍然無法正常工作。
到目前爲止,我認爲我能夠發現它與平板電腦有關。如果我禁用他們,我的類別將正常工作。 – zzarbi