mywebsite.com/it/moto/
следует перенаправить на домашнюю страницу. Поэтому я написал это в routes.phpМаршрутизация не работает должным образом в CodeIgniter
$route['(\w{2})/(auto|moto)/(.*)'] = '$3';
$route['(\w{2})/(auto|moto)'] = $route['default_controller'];
который работает довольно хорошо. Кроме того, mywebsite.com/it/moto/mercatino
маршрутов до Mercatino
контроллер, который является идеальным.
Нет, я хочу это mywebsite.com/it/moto/mercatino/componenti-veicolo/221/molle-originali-r6
на пути к этой функции внутри контроллера Mercatino
public function prodotto($category, $id, $title){
}
, следовательно, я написал эту строку в routes.php
$route['(mercatino|market){1}/(:any)/(:num)/(:any)'] = "mercatino/prodotto/$2/$3/$4";
Но я получаю сообщение об ошибке 404. Любая идея, как это исправить?
Нет каталогов. Все «каталоги» после '/ prodotto /' передаются как параметры функции 'prodotto()', это то, что делает codeigniter. Так, например, если у вас есть url, например '/ dir1/dir2/dir3 /..../ dirn /' CI будет обращаться к классу 'Dir1', вызовите funcion' dir2' и передайте параметры '/ dir3/.../dirn/'к этой функции –
ОК, я получил вашу мысль. Может быть, вы можете попробовать удалить '{1}'. Может быть, CI не поддерживает этот тип регулярного выражения в маршруте. Не уверен точно. –
Я нашел решение. Посмотрите на мой ответ –