Back to CategoryNode class

Method getChildren

public \Joomla\CMS\Categories\CategoryNode[]
getChildren
(mixed $recursive = false)
Get the children of this node
Parameters
  • bool $recursive False by default
Returns
  • \Joomla\CMS\Categories\CategoryNode[] The children
Since
  • 1.6
Class: CategoryNode
Project: Joomla

Method getChildren - Source code

/**
 * Get the children of this node
 *
 * @param   boolean  $recursive  False by default
 *
 * @return  CategoryNode[]  The children
 *
 * @since   1.6
 */
public function &getChildren($recursive = false)
{
    if (!$this->_allChildrenloaded) {
        $temp = $this->_constructor->get($this->id, true);
        if ($temp) {
            $this->_children = $temp->getChildren();
            $this->_leftSibling = $temp->getSibling(false);
            $this->_rightSibling = $temp->getSibling(true);
            $this->setAllLoaded();
        }
    }
    if ($recursive) {
        $items = array();
        foreach ($this->_children as $child) {
            $items[] = $child;
            $items = array_merge($items, $child->getChildren(true));
        }
        return $items;
    }
    return $this->_children;
}