正则表达式匹配所有期望参数

时间:2015-10-19 20:44:59

标签: php regex redirect wordpress-plugin

我有正则表达式重定向的特殊问题。

要点:

我有以下结构:name.com/director/products/product-name

我们在产品级别也有过滤器。例如

name.com/director/products/?filtername=top

问题:网址最后一部分的很多(产品名称)经常被删除,因此Google网站管理员工具会将这些网页显示为404。

我们将404页面的用户重定向到主产品目录。例如:

/ director / products / product-name(现在404)用户将被重定向到/ director / products /。单个产品页面没有意义,因此我们不需要用户转到单个产品页面,而是用户可以在主要产品页面上找到所有内容。

我们使用以下正则表达式与我们的插件进行重定向

/导演/产品/的(。+)

现在我们遇到了过滤器也重定向到/ director / products /

的问题

所以/ director / products /?filtername = top也会重定向到/ director / products /

我尝试了很多例子但是我无法从重定向中排除参数。任何专家都能帮助我吗?

谢谢

1 个答案:

答案 0 :(得分:0)

这是你要找的吗?

\/director\/products\/([^\?].*)

https://regex101.com/r/fR3eG0/1

您还可以使用否定前瞻来确保以下细分不以查询的?开头:

\/director\/products\/(?!\?)(.+)