如何从url codeigniter中删除params

时间:2014-07-17 10:14:04

标签: codeigniter url url-rewriting seo slug

我的网址是这样的:

  

http://domain/sentencijos/autoriai/429/marselis-prustas

其中sentencijos是一个控制器,autoriai是一种方法,429(param)是marselis prustas ID。我想删除这个参数(ID),但不知道如何。

完整网址应如下所示:

  

http://domain/sentencijos/autoriai/marselis-prustas

有人能帮助我吗? 感谢

1 个答案:

答案 0 :(得分:8)

slug替换为您网址中的id

这就是它的工作原理:

1)我在这里假设一个产品网站流程 2)对于特定产品页面,显示产品详细信息需要URL中的一些数据(可以是product idproduct slug等。) 3)在URL中使用product ids不被视为一种好习惯。它既不是 SEO friendly 也不是 User friendly 。以下是使用product id

的网址示例
  

http://www.example.com/products/123/

4)因此,替代方案就是所谓的 product slug
5)slug (semantic URL or Permalinks) 基本上是一个有意义的,seo友好的,人类可读的关键字序列,用连字符(或下划线)分隔。以下是使用product slug

的网址示例
  

http://www.example.com/products/apple-iphone-5S-16GB-brand-new/

此处, apple-iphone-5S-16GB-brand-new 是一个slug。

您还可以从此页面的URL中了解

  

http://stackoverflow.com/questions/24800780/how-to-remove-params-from-url-codeigniter

其中,
24800780 =这是唯一的question_id
如何删除params-from-url-codeigniter =这是slug

制作的question


如何使用slug?

1)当然,您的产品页面需要URL中的一些数据才能了解要显示的产品 2)在我们使用id查询我们的数据库之前,我们从URL获取。但现在我们会做同样的事情(查询我们的数据库)只是用slug替换id就是这样! 3)因此在数据库中添加名为 slug 的附加列。以下是您更新的产品数据库结构。

id  |  title  |  slug  |  price  |  thumbnail  |  description


在您的代码中:

假设这是您的网址,

http://domain/sentencijos/autoriai/marselis-prustas

并且此marselis-prustas可能是您的控制器功能将接收的slug value,并传递给逐渐使用它来查询数据库的模型。
为此,您必须创建一个新列(如上所述),该列应具有值marselis-prustas以及其他slugs


网址中slug的优点:

1)SEO友好
2)用户友好
3)清洁和语义URL