Ссылки на frontend из backend Yii2

Используя в качестве приложения Yii2 advanced шаблон, иногда появляется необходимо связать frontend и backend именно с помощью ссылок. Например была задача загружать фотографии для фронтенда из бекенда таким образом, чтобы все фотографии адекватно отображались как на frontend, так и на backend.

Таким образом можно продублировать настройки компонента urlManager в backend для frontend.

например так:

'urlManagerFrontend' => [
    'class' => 'yii\web\urlManager',
        'baseUrl' => '//mydomain.com',
        'showScriptName' => false,
        'enablePrettyUrl' => true,
        'rules' => [
            ...
        ],
],

В свою очередь rules можно разместить в файл, чтобы не приходилось редактировать rules в разных местах:

    'rules' => require Url::to('@frontend/config/urls.php'),

Затем можно создавать ссылки с помощью urlManagerFrontend, например
Yii::$app->urlManagerFrontend->createAbsoluteUrl()

Источники:
yiisfot/yii2-app-advanced
yiisoft/yii2

Leave a comment

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.