Você pode tentar alterar seu código para usar uma boa mistura de getChilderCategories () e a função toArray.
$category = Mage::getModel('catalog/category')->load(3);
$subCats = $category->getChildrenCategories();
$subCatIds = $subCats->toArray(array('entity_id'));
A função getChildrenCategories fornecerá uma coleção na mesma ordem que a seção admin. Depois, chamando toArray e solicitando apenas o atributo entit_id, você terá uma variedade de IDs de categoria
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();
? valeu!