'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'' => '',
'/admin' => '/admin/products/create',
'/<cat:\S+>/<name:\S+>_<id:\d+>' => '/site/product',//роут товара
'/<cat:\S+>_<cat_id:\d+>' => '/site/cats',//роут категории
'/<cat:\S+>/<name:\S+>_<id:\d+>' => '/site/product',//новый роут товара
'/<cat:\S+>_<cat_id:\d+>' => '/site/cats',//новый роут категории
'/products/<name:\S+>_<id:\d+>' => '/site/product',
'/videos/<url:\S+>' => '/site/video',
'/articles/<url:\S+>' => '/site/video',
'<module:\S+>/<controller:\S+>/<action:\S+>' => '/<module>/<controller>/<action>',
'<module:\S+>/<controller:\S+>' => '/<module>/<controller>',
'<action:\S+>' => '/site/<action>'
]
как убрать id из ссылок, подскажите как и где поправить
Если не нужны id в ссылках, нужно делать так(на примере одного роута):
В конфиге urlManager'a:
'products/<cat:[\w\-]+>/<alias:[\w\-]+>' => '/site/product', //роут товара
В контроллере SiteController:
public function actionProduct($cat, $alias)
{
$product = Product::find()->where(['alias' => $alias])->limit(1)->one();
}
Тогда ссылка на товар будет иметь вид /products/my-super-category/my-super-tovar.
В базе в таблице products столбец alias должен быть уникальным.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости