2017-05-20 6 views
1

私はCodeIgniterに基づいてオンラインストアを構築しています。 URLをこのように見せたいですか?どのようなSEOのフレンドリーなURLのこのタイプのソリューションです。動的URLをCodeIgniterに表示する

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

私はこのURLを必要とする:

example.com/women/sarees-sari 

しかし、私のURLが

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

/Product/は私のコントローラで生成され、 /item//MQ==/が私のプロダクトID

で、関数名です
+0

設定/ルート上で、 '$ route ['product/item /(:any)/(:any)'] = 'コントローラ/機能/ $ 1/$ 2/$ 3'を試してください。 PHP https://www.codeigniter.com/user_guide/general/routing.html#examples – user4419336

答えて

1

routingを使用して、リクエストURLを処理できます。それは簡単です。例えば、あなたのケースのために:

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

CodeIgniterでは、コントローラ上で呼び出すことができます_remap機能を持っています。したがって、これをコア・コントローラーまたはメイン・コントローラーで呼び出すことができ、望む機能を呼び出すことができます。

+0

こんにちは、 ありがとうございます、コードは仕事ですが、1つのカテゴリのみです。 複数のカテゴリIDを持つ複数のカテゴリがあります コントローラと機能は同じで、カテゴリIDは質問/ MQ == /、/ Ms == /、/ Md == /など(100カテゴリとサブカテゴリー) コードを書くには –

+0

ルーティングで**ワイルドカード**形式または**正規表現**を使用できます。例えば、 '$ route ['women /(:any)'] = 'Product/item/$ 1';' 2番目のurlパラメータをitem関数に送り、item関数で処理します。 –

1

CodeIgniterには非常に優れたルーティングシステムが用意されているため、必要に応じてURLを変更し、/application/config/routes.phpファイルを使用してリンクすることができます。

このファイルを初めて開くと、デフォルトのコントローラ、つまり$ route ['default_controller'] = 'welcome'が表示されます。 ただし、必要な数のルートを追加できます。 seoの場合と同様に、 $ route ['women-sarees-sari'] = 'Product/item/MQ =='を追加する必要があります。これにより、ユーザーはwww.example.com/women-sarees-sariから正しいコントローラとメソッドにルーティングされます。

関連する問題