У меня возникли проблемы с сегментами uri в codeigniter. Я ищу для разработки продуктов и деталей продукта, поэтому я создал контроллер для него и передал параметр имени продукта, чтобы показать имя продукта в URL-адресе, поэтому мой URL-адрес будет уподобиться этойотображение продуктов с категориями
локальный/project_name/продукты/PRODUCT_NAME
и эта часть работает нормально для меня, но я запутался о том, что если я хотел бы показать, как категории продуктов и название продукта, как я я пытаюсь сделать мой url вот так
локальный/project_name/Продукты/category_name/product_name
так, как я буду делать это сейчас, когда я прохожу в категории имени он показывает мне 404 не найдена Запрашиваемая Вами страница не найдена. так как иногда будет отображаться прямой продукт, и иногда, если пользователи просматривают детали продукта через категорию, поэтому название категории будет передано в URL-адресе, а также, как работают эти сегменты? Я имею большую путаницу об этом
Вот мой контроллер для продуктов
public function products($product_name) {
if($this->uri->segment(3)) {
$category = ucwords(str_replace('-', " ", $product_name));
$product = ucwords(str_replace('-', " ", $this->uri->segment(3)));
} else {
$product = ucwords(str_replace('-', " ", $product_name));
}
$page_data = $this->get_data->get_Data($product, 'name', 'products');
$data['title'] = 'Products - ' . $page_data->row()->name;
$data['body_class'] = 'poductsdetails';
$this->load->view('includes/header.php', $data);
$this->load->view('templates/navigation.php');
$data['content'] = array(
'name' => $page_data->row()->name,
'price' => $page_data->row()->price,
'description' => $page_data->row()->description,
'picture' => $page_data->row()->picture,
'category' => $page_data->row()->category,
);
$this->load->view('products/details', $data);
$this->load->view('templates/footer-form.php');
$this->load->view('includes/footer.php');
}
А вот мои маршруты я создал
$route['default_controller'] = 'home';
$route['admin'] = 'admin/index';
$route['admin/([a-z])'] = 'admin/$1';
$route['products/(:any)'] = 'home/products/$1';
$route['products/(:any)'] = 'home/products/$1/$2';
$route['products/(:any)'] = 'home/products/$1/$2/$3';
$route['(:any)'] = 'home/page/$1';
$route['(:any)'] = 'home/page/$1/$2';
Недоступно для передачи названия этой категории, чтобы увидеть отдельные данные о продукте –
Ну, это требование моего клиента, которое он делает для seo-цели, и я застрял здесь –