【发布时间】:2017-09-22 04:59:45
【问题描述】:
您好,我有这样的网址...
www.example.com/list.php?type=vehicles&stype=Cars
www.example.com/list.php?type=vehicles&stype=Cars&loc=Ludhiana
为了对结果进行排序,排序变量在 URL 的最后附加,在添加排序变量后的 URL 是
www.example.com/list.php?type=vehicles&stype=Cars&sort='**ANYVALUE**'
www.example.com/list.php?type=vehicles&stype=Cars&loc=Ludhiana&sort='**ANYVALUE**'
在我使用的 href 上
<a href="?<?php echo http_build_query(array_merge($_GET, array('sort' => 'sort-value'))); ?>"></a>
上面的代码非常适合我。它在 URL 的末尾添加了我想要的排序变量。如果变量已经存在于 URL 中,它也会修改排序变量的值。
但后来我使我的网址对 SEO 友好,现在网址是
www.example.com/vehicles/Cars
www.example.com/vehicles/Cars/Ludhiana
添加排序变量后就变成了
www.example.com/vehicles/Cars&sort='**ANYVALUE**'
www.example.com/vehicles/Cars/Ludhiana&sort='**ANYVALUE**'
但现在由于 URL 是 SEO 友好的,所以当我使用相同的 href 时,它不起作用,它变成了
http://www.example.com/type=vehicle&stype=Car&sort=R-ASC
这会导致 404 错误。
什么是正确的 href 代码,以便它可以执行以下操作
- 在 URL 末尾附加排序变量,无论 URL 有 2 个变量还是 3 个变量。
- 如果 URL 中已经存在排序变量,它将使用当前 href 操作其值。
提前谢谢....
【问题讨论】:
-
你现在如何建立你的网址?
-
这就是我想要的...
-
我需要 href 代码,它会按原样获取整个 URL,最后会附加排序变量....如果排序变量已经存在于 URL 中,那么它将操纵当前的排序值保持 URL 的其余部分相同...