我在codeigniter中的uri段遇到問題我期待開發產品和產品詳細信息,所以我爲它創建了一個控制器並傳遞了產品名稱的參數以顯示產品名稱,因此我的url將變成了這個樣子顯示產品類別
本地主機/ PROJECT_NAME /產品/ PRODUCT_NAME
,這部分工作爲我好,但我感到困惑。如果我想顯示的產品類別和產品名稱,比如我什麼我試圖讓我的網址像這樣
本地主機/ 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目的而做,而我在這裏被阻塞 –