_layout->getChildBlocks($this->getNameInLayout()); } /** * Find link by path * * @param string $path * @return \Magento\Framework\View\Element\Html\Link */ protected function getLinkByPath($path) { foreach ($this->getLinks() as $link) { if ($link->getPath() == $path) { return $link; } } } /** * Set active link * * @param string $path * @return void */ public function setActive($path) { $link = $this->getLinkByPath($path); if ($link) { $link->setIsHighlighted(true); } } /** * Render Block * * @param \Magento\Framework\View\Element\AbstractBlock $link * @return string */ public function renderLink(\Magento\Framework\View\Element\AbstractBlock $link) { return $this->_layout->renderElement($link->getNameInLayout()); } /** * Render block HTML * * @return string */ protected function _toHtml() { if (false != $this->getTemplate()) { return parent::_toHtml(); } $html = ''; if ($this->getLinks()) { $html = 'hasCssClass() ? ' class="' . $this->escapeHtml( $this->getCssClass() ) . '"' : '') . '>'; foreach ($this->getLinks() as $link) { $html .= $this->renderLink($link); } $html .= ''; } return $html; } }