Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从类别id Magento获取子类别_Magento - Fatal编程技术网

从类别id Magento获取子类别

从类别id Magento获取子类别,magento,Magento,我正在尝试从类别id获取子类别。 但是寻找更优化的代码,因为数据库有大量的记录,无法加载整个类别 我试过下面的代码,它们在本地主机上工作,但由于我的服务器有大量数据,所以无法在本地主机上工作 $cat = Mage::getModel('catalog/category')->load(13); $subcats = $cat->getChildrenCategories(); //AND $categories = Mage::getModel('catalog/categor

我正在尝试从类别id获取子类别。 但是寻找更优化的代码,因为数据库有大量的记录,无法加载整个类别

我试过下面的代码,它们在本地主机上工作,但由于我的服务器有大量数据,所以无法在本地主机上工作

$cat = Mage::getModel('catalog/category')->load(13);
$subcats = $cat->getChildrenCategories();

//AND

$categories = Mage::getModel('catalog/category')->getCategories($cat_id);

请帮助

您好,检查下面的代码可能会对您有所帮助

<?php 
$root = Mage::getModel('catalog/category')->load(13); 
$subCat = explode(',',$root->getChildren()); 

$collection  = $root
             ->getCollection()
             ->addAttributeToSelect("*")
             ->addFieldToFilter("entity_id", array("in", $subCat) );

foreach($collection as $catname){
echo $catname->getName();
}
?>


您需要哪些数据?整个类别的数据太多了?已启用平面类别表?平面已启用。。我试图得到产品的id,这是在那个特定的类别..我想得到子类别,我正在寻找替代方法来做这件事。因为当我进一步尝试获取各个子类别的产品时,我得到了服务器503错误(当子类别列表很长时),正在寻找轻量级的东西
$cat->getChildrenCategories()返回类别集合。你如何处理它的数据?使用集合比直接sql查询慢一点,但这是magento中的常规方法,应该可以。如果您只是需要它来获取关联的产品,您可以选择id字段,然后根据该id筛选产品集合。