2016-08-21 104 views
1

如何使用.htaccess將s字符串添加到搜索結果的末尾?添加查詢字符串以在.htaccess中重定向URL

原文鏈接:www.example.com/?s=search1重定向到: www.example.com/?s=search1 & post_type =產品

或 www.example.com/?s= search2重定向到: www.example.com/?s=search2 & post_type =產品

「search1」和「search2」是可變的。

我需要這個將Wordpress搜索結果更改爲Woocommerce搜索結果。

什麼嘗試:

RewriteEngine On 
RewriteCond %{QUERY_STRING} ^s=([^&]+) 
RewriteRule ^/?s=$ http://www.example.com/?s=%1&post_type=product [L,R=301] 

預先感謝您。

回答

2

.htaccess似乎很好,除了一兩件事:重寫規則模式將會對主機名和端口後的URL的一部分之前匹配,查詢字符串,所以這應該這樣做:

RewriteEngine On 
RewriteCond %{QUERY_STRING} !post_type=product 
RewriteCond %{QUERY_STRING} ^s=([^&]+) 
RewriteRule ^$ http://www.example.com/?s=%1&post_type=product [L,R=301] 
+0

你好,謝謝你的快速回答。在我應用你的代碼之後,我得到了一些重定向循環。你知道如何避免這種情況嗎? –

+0

啊,是的。請參閱編輯。 –

+0

謝謝你的幫助。工作完美。 –

相關問題