{%NAME%}"; public function run() { $items = ""; $linksModel = $this->getData(); foreach ($linksModel as $model){ /** @var FriendlyLink $model */ $item = str_replace("{%URL%}", $model->url, $this->itemTemplate); $item = str_replace("{%NAME%}", $model->name, $item); $items .= $item; } return str_replace("{%ITEMS%}", $items, $this->layout); } private function getData() { if( $this->data === null ){ /** @var FriendlyLinkServiceInterface $friendlyLinkService */ $friendlyLinkService = \Yii::$app->get(FriendlyLinkServiceInterface::ServiceName); $this->data = $friendlyLinkService->getFriendlyLinks(); } return $this->data; } }