【问题标题】:Display dynamic URLs in CodeIgniter for seo在 CodeIgniter 中为 seo 显示动态 URL
【发布时间】:2017-05-20 10:51:36
【问题描述】:

我正在建立一个基于 CodeIgniter 的在线商店。我希望 URL 看起来像这样?这种类型的 SEO 友好 url 的解决方案是什么。

http://example.com/[product-category]/[product-sub category]

我需要这个网址:

example.com/women/sarees-sari

但是我的网址是生成的

example.com/Product/item/MQ==/women/sarees-sari

/Product/ 是我的控制器, /item/ 是函数名, /MQ==/ 是我的产品编号

【问题讨论】:

标签: php codeigniter url seo


【解决方案1】:

您可以使用 routing 来处理您的请求网址。这很简单。例如你的情况:

$route['women/sarees-sari'] = 'Product/item/MQ==';

Codeigniter 有 _remap 可以在控制器上调用的函数。所以你可以在核心控制器或主控制器上调用它,然后调用你想要的函数。

【讨论】:

  • 您好,谢谢您,代码有效,但仅适用于一类。但是我有多个具有多个类别 id 的类别我的控制器和功能是相同的,并且类别 id 是多个如问题中所述的 /MQ==/、/Ms==/、/Md==/ 等(100 个类别和子类别)那我怎么写代码
  • 您可以在路由中使用wildcard格式或regex。例如使用$route['women/(:any)'] = 'Product/item/$1';将第二个url参数发送到item函数并在item函数中处理。
【解决方案2】:

CodeIgniter 具有非常好的路由系统,因此您可以根据需要修改您的 url 并使用 /application/config/routes.php 文件进行链接。

如果你第一次打开这个文件,你只会看到默认控制器,即 $route['default_controller'] = 'welcome'; 但是您可以根据需要添加任意数量的路线。就像您的 seo 情况一样,您应该添加 $route['women-sarees-sari'] = '产品/项目/MQ==';这会将用户从 www.example.com/women-sarees-sari 路由到正确的控制器和方法。

【讨论】:

    猜你喜欢
    • 2011-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 2010-12-24
    • 1970-01-01
    • 2011-06-23
    相关资源
    最近更新 更多