Вы можете попробовать изменить свой код, чтобы использовать хорошее сочетание getChilderCategories () и функции toArray.
$category = Mage::getModel('catalog/category')->load(3);
$subCats = $category->getChildrenCategories();
$subCatIds = $subCats->toArray(array('entity_id'));
Функция getChildrenCategories выдаст вам коллекцию в том же порядке, что и в разделе администратора, а затем, вызвав toArray и запросив только атрибут Right_id, вы получите массив идентификаторов категорий.
array(3) {
[10]=> array(1) {
["entity_id"]=> string(2) "10"
}
[13]=> array(1) {
["entity_id"]=> string(2) "13"
}
[18]=> array(1) {
["entity_id"]=> string(2) "18"
}
}
$subCats = Mage::getModel('catalog/category')->load($category->getId())->getChildren();
? Спасибо!