2016-11-10 9 views
-1

私は約1000のカテゴリをprestashopで作成しており、SPSEARCHPROモジュールをインストールしています。このモジュールを使用すると、私の製品で検索することができます。 カテゴリの数が多いためライブ検索が機能しませんが、通常検索するとcat_idがリンクに含まれていてリンクが長すぎるためどちらも機能しません。私はそれがライブ検索がうまくいかない理由だと思います。ここでPrestashopの特定のパラメータを削除する書き換え条件

は私がやろうとしているものです:

私は、このリンクを持っている: https://example.com/en/module/spsearchpro/catesearch?fc=module&module=spsearchpro&controller=catesearch&orderby=name&orderway=desc&cat_id=2%2C4%2C(etcなどなどなどなど)を

値が長すぎるため、どのように私は、リンクからCAT_IDパラメータを削除することができますそれにはすべてのカテゴリIDが含まれています。

私はprestashop 1.6.1.9でマルチストールを有効にしています(問題があるかどうかわかりません)。

ありがとうございました!

+0

これは書き直しとは関係ありません。 URLの長さが長すぎる場合は、最初に出力に含まれないようにする必要があります。 – Walf

+0

できません...更新を受け取るモジュールです...代わりにURLを書き直す必要があります... –

+0

あなたは応答するつもりですか? – Walf

答えて

0

これを早めに.htaccessに置くと、パスがカテゴリ検索のスラッグで終わったときに不要なパラメータを切り捨てる必要があります。影響を受けるページが多い場合は、他のスラッグを追加する必要があります。

RewriteCond %{QUERY_STRING} ^(.*?&)?cat_id=(?>[^&]*)(?:&(.*))?$ 
RewriteRule ^.*/catesearch$ /$0?%1%2 [NS,DPI,PT] 

あなたはPrestaShopのは$_GETを信頼していない場合、それは(これは、書き換えられたURLから来ている)で始まるDPI,PT旗の代わりにL,Rを使用する必要があります。 URLを再解析して元の不要なものに上書きする$_SERVER['REQUEST_URI']のURLを再解析するように見えるため、私は確信しています。これは、外部リダイレクトで動作させる唯一の方法かもしれません。

関連する問題