ElggMenuItem::setChildren PHP Method

setChildren() public method

This is reserved for the \ElggMenuBuilder.
public setChildren ( ElggMenuItem[] $children ) : void
$children ElggMenuItem[] Array of items
return void
    public function setChildren($children)
    {
        $this->data['children'] = $children;
    }

Usage Example

示例#1
0
 /**
  * Reorders menu item and adds an add button
  *
  * @param \ElggMenuItem $item  menu item
  * @param int           $depth depth of the menu item
  *
  * @return \ElggMenuItem
  */
 private static function orderMenuItem(\ElggMenuItem $item, $depth)
 {
     $depth = (int) $depth;
     $children = $item->getChildren();
     if (empty($children)) {
         return $item;
     }
     // sort children
     $ordered_children = [];
     foreach ($children as $child) {
         $child = self::orderMenuItem($child, $depth + 1);
         $child_priority = $child->getPriority();
         while (array_key_exists($child_priority, $ordered_children)) {
             $child_priority++;
         }
         $ordered_children[$child_priority] = $child;
     }
     ksort($ordered_children);
     $item->setChildren($ordered_children);
     return $item;
 }
All Usage Examples Of ElggMenuItem::setChildren