我对ci完全不熟悉,
我有一个这样的网址:
http://localhost/mvc/post/prod_id/1
我希望它是:
http://localhost/mvc/post/my-best-product
到目前为止,我能够设法将所有内容路由到home/post/
并学习segment
功能。
但我的问题是如何真正将url_title
输出到实际网址。
我找不到关于这个特定主题的任何信息。我所能找到的是如何使用url_title
以及如何在ci中路由。但他们没有解释我们如何才能真正改变基本网址名称。
请引导我走向正确的方向。
解决方案示例:
public function my_method($product_slug)
{
$product1 = "training-for-recruitment";
$product2 = "training-for-od";
if($product_slug==$product1)
{
$this->load->view('prod1');
}else if($product_slug==$product2)
{
$this->load->view('prod2');
}else{
show_404();
}
}
这不是我要做的。只有其他人才能理解Slugs的解决方法。
答案 0 :(得分:4)
为每个产品生成一个独特的slug。在产品表上添加一个字段,每次从表中选择产品时,使用该slug而不是从主id获取产品。
所以,你的功能就像:
function product($product_slug)
{
//get product by slug from database
//load view page
}
现在,在 config / routes.php
中$route['your_controller_name/(:any)'] = "your_controller_name/product/$1";
答案 1 :(得分:1)
你需要这样做: