Estou obtendo todas as minhas categorias e subcategorias em string json, mas quero apenas categorias ativas em minha string json.

<? php
class Ab CategoryObserver Model Observer {
public function updateTopMenuJson (Varien
Event Observer $ observer) {
$
helper = Mage :: helper (‘catalog / category’);
$ categorias = $ helper-> getStoreCategories ();
$ recursionLevel = 3; // Adiciona nível de recursão
$ storeId = 1; // Adicione o seu Store ID para o qual deseja obter a árvore de categorias
$ node = ”;
$ categoryTreeData = $ this-> getCategoryTree ($ recursionLevel, $ storeId);
$ arr = codificação json ($ this-> getCategoryTree (3));
echo “

";impressão

r ($ arr);
echo (“<script> console.log (‘PHP:”. $ arr. “‘); </script>”); conteúdo do
arquivo colocado (“cat_node.json”, $ arr);
}

protected function getCategoryTree($recursionLevel, $storeId = 1)
{
$parent
= Mage::app()->getStore($storeId)->getRootCategoryId();
$tree
= Mage::getResourceModel('catalog/category_tree');
/* @var $tree Mage_Catalog_Model_Resource_Category_Tree */

$nodes
= $tree->loadNode($parent)
->loadChildren($recursionLevel)
->getChildren();
$tree
->addCollectionData(null, false, $parent);

$categoryTreeData
= array();
foreach ($nodes as $node) {
$categoryTreeData
[$node->getData('entity_id')] = $this->getNodeChildrenData($node);
}

return $categoryTreeData;
}

protected function getNodeChildrenData(Varien_Data_Tree_Node $node)
{
$categoryData
= array(
'title' => $node->getData('name'),
'url' => $node->getData('url_key'),
'id' => $node->getId(),
// 'mega_menu1'=> $node->getData('mega_menu')
'mega_menu'=> 'false'
);

foreach ($node->getChildren() as $childNode) {
if (!array_key_exists('children', $categoryData)) {
$categoryData
['mega_menu'] = 'true';
$categoryData
['children'] = array();
}

$categoryData
['children'][$childNode->getData('entity_id')] = $this->getNodeChildrenData($childNode);
}
return $categoryData;
}

} // Fim da aula
?>