Ejemplo n.º 1
0
 /**
  * Получение виджетов блока без вывода.
  *
  * Для вывода данных блока
  *
  *        $widget = Block::get('block_name', $params);
  *        if(is_array($widget))
  *        {
  *            foreach($widget as $data)
  *            {
  *                echo $data;
  *            }
  *        }
  *        else
  *            echo $widget;
  *
  * @param string $name
  * @param array  $params Дополнительные параметры доступные в виджете
  *
  * @return array
  */
 public function getWidgetsByBlock($name, array $params = [])
 {
     $widgets = $this->collection->getWidgetsByBlock($name);
     foreach ($widgets as $widget) {
         $widget = $widget->getObject();
         $widget->setParameters($params);
     }
     return $widgets;
 }
 /**
  * @return void
  */
 public function placeWidgetsToLayoutBlocks()
 {
     $this->registeredWidgets->each(function (WidgetCollectionItem $widget) {
         if (($object = $widget->getObject()) instanceof WidgetRenderable) {
             Meta::loadPackage($object->getMediaPackages());
         }
     });
     parent::placeWidgetsToLayoutBlocks();
 }