Найти корневую категорию магазина - PullRequest
5 голосов
/ 02 января 2012

Я использую Magento ver1.6.1. Мне нужно получить корневую категорию магазина. Я ищу в Google не получил ни одной хорошей идеи / кода. Дайте мне знать, как получить корневую категорию магазина?

Mage::app()->getStore()->getRootCategoryId()

Приведенный выше код дает корневую категорию по умолчанию, но мне нужен идентификатор категории, который мы выбираем при создании магазина.

Ответы [ 2 ]

14 голосов
/ 02 января 2012

вы пробовали:

Mage::app()->getStore($storeId)->getRootCategoryId();
0 голосов
/ 26 июля 2016

Пишу это для моей собственной помощи, так как моя платформа была настроена в представлениях с несколькими магазинами, и, конечно, я не получил правильный идентификатор корневой категории. Я все нижеприведенные решения:

Соль 1:

Mage::app()->getStore($storeId)->getRootCategoryId(); //The result was ID: 2

Соль 2:

Mage::app()->getStore()->getRootCategoryId(); //The result was ID: 2

Соль 3:

$store = Mage::getModel('core/store')->load(Mage_Core_Model_App::DISTRO_STORE_ID);
$categoryId = $store->getRootCategoryId();// The result was again ID: 2

Метод, который только работал и возвращал ID: 1, приведен ниже и взят из здесь

public function getRootCategoryId()
{
    $categories = Mage::getModel('catalog/category')->getCollection();
    $categIds = $categories->getAllIds();
    asort($categIds);
    foreach ($categIds as $k => $catId)
    {
        $category = Mage::getModel('catalog/category')->load($catId);
        if ($category->name)
        {
            return $catId;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...