【问题标题】:getResourceSingleton() Not working multiple time on single call magento 1getResourceSingleton()在一次调用magento 1上不能多次工作
【发布时间】:2018-08-28 20:36:01
【问题描述】:

我们正在使用 Magento 1。
我们使用了这段代码:

Mage::getResourceSingleton('catalog/category_tree')->load();

$tree = Mage::getResourceSingleton('catalog/category_tree')->load();
    $root = $tree->getNodeById($rootCategoryId);
                if($root && $root->getId() == 1) { 
                    $root->setName(Mage::helper('catalog')->__('Root')); 
                }
                $collection = Mage::getModel('catalog/category')->getCollection() 
                    ->addAttributeToSelect('name') 
                    ->addAttributeToFilter('is_active','1');
                    //->addAttributeToFilter('display_mode',array('nlike'=>'PAGE'))
                    //->setLoadProductCount(true)
                    //->setProductStoreId($store)
                    //->addAttributeToFilter('include_in_menu','1');

                $tree->addCollectionData($collection, true);

我们创建了一个 api,并在小部件类别和类别列表中调用它,但它只加载最后一个,而不是所有调用。

请提出正确的方法

【问题讨论】:

    标签: php api magento singleton


    【解决方案1】:

    这就是singleton 的工作方式,请改用模型。

    Mage::getResourceModel('catalog/category_tree')
    

    【讨论】:

    • 是的尝试过,虽然我们使用模型 $tree->getNodeById($rootCategoryId); 不起作用
    • 你没有提到任何错误信息。但我猜您正在尝试从类别模型访问方法 getNodeById() 。而只有通过类别资源模型才有可能。这样:Mage::getResourceModel('catalog/category_tree')
    • 酷!!!完美答案!!! Mage::getResourceModel('catalog/category_tree') 工作,非常感谢 :)
    猜你喜欢
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 2021-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-07
    • 2022-08-23
    相关资源
    最近更新 更多