Для захвата нескольких параметров строки запроса в массиве $_GET
в index.php
необходимо изменить RewriteRule
на следующее:
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ index.php?method=$1¶m=$2&orderby=$3 [L,QSA]
Я использовал method
, param
и orderby
, как вы указали в вопросе.
Просто повторите шаблон ([^/]+)/
для каждого параметра строки запроса, который вы хотите добавить, и ссылайтесь на них соответственно с помощью $1
, $2
, $3
et c.
Примечание: в исходном RewriteRule
вы неправильно отформатировали строку запроса, вам нужно использовать &
между параметрами, а не ?
(знак вопроса используется в качестве разделителя и не является частью строки запроса.).
Приведенное выше решение требует трех параметров, если, однако, вы хотите сделать параметры необязательными, вы можете использовать ?
в шаблоне следующим образом:
RewriteRule ^([^/]+)?/?([^/]+)?/?([^/]+)?/?$ index.php?categoryId=$1&orderBy=$2&something=$3 [L,QSA]
Знак вопроса делает предыдущий токен в регулярном выражении необязательным.