2017-05-20 32 views
1

我正在構建基於CodeIgniter的在線商店。我希望網址看起來像這樣?什麼是這種類型的SEO友好的網址的解決方案。在CodeIgniter中爲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==/是我的產品ID

+0

嘗試類似'$ route ['product/item /(:any)/(:any)/(:any)'] ='controller/function/$ 1/$ 2/$ 3';'config/routes。 php https://www.codeigniter.com/user_guide/general/routing.html#examples – user4419336

回答

1

您可以使用routing來處理您的請求網址。這很簡單。例如,對於您的情況:

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

笨有_remap功能,可以在控制器被調用。所以你可以在覈心控制器或主控制器上調用它,然後調用你所希望的函數。

+0

你好, 謝謝,代碼是工作,但只適用於一個類別。 但我有多個類別與多個類別ID 我的控制器和功能是相同的,類別ID是多個像問題/ MQ == /,/ Ms == /,/ Md == /等(100個類別和子類別) 那麼我該如何編寫代碼 –

+0

您可以在路由中使用**通配符**格式或**正則表達式**。例如使用'$ route ['women /(:any)'] ='Product/item/$ 1';'發送第二個url參數給item函數並在item函數中處理它。 –

1

CodeIgniter具有非常好的路由系統,因此您可以根據您的要求修改您的url並使用/application/config/routes.php文件進行鏈接。如果你第一次打開這個文件,你將會看到只有默認的控制器,例如$ route ['default_controller'] ='welcome'; 但您可以根據需要添加儘可能多的路線。就像你的情況一樣,你應該添加 $ route ['women-sarees-sari'] ='Product/item/MQ ==';這會將用戶從www.example.com/women-sarees-sari發送到正確的控制器和方法。