То, что вы пытаетесь сделать, это создать конкретный URL на основе GET-параметра. В следующем примере, если пользователь вводит url test.local / Some-nice-article , тогда функция SiteController::actionIndex($slug)
получит параметр.
'urlManager' => [
'pattern' => '<slug>',
'route' =>'site/index',
'ecnodeParams' => false,
//class => any\custom\UrlRuleClass,
//defaults => []
]
Или вы хотите, чтобы другой URL указывал, является ли это подробный вид? Вы можете сделать это следующим образом:
'urlManager' => [
'pattern' => '<slug>-detail',
'route' =>'site/detail',
'ecnodeParams' => false,
//class => any\custom\UrlRuleClass,
//defaults => []
]
В этом примере, если пользователи помещают строку '-detail' в слаг, тогда он будет анализировать маршрут SiteController::actionDetail($slug)
к запросу.
Обратите внимание, что, если вы еще этого не сделали, включите prettyUrls в файле конфигурации
Вы можете найти немного больше об этой теме в этом ответе или в Yii2 окончательном руководстве