Переписать символ, разделяющий теги, двумя словами для перенаправления URL в htaccess? - PullRequest
0 голосов
/ 31 октября 2019

У меня есть много URL тегов, которые необходимо изменить на новую структуру постоянных ссылок домена.

Мне нужна помощь, пожалуйста, с правилом перезаписи для моего файла .htaccess.

Старый URL:

domain.com/tags.php?tag=TAGNAME

Новый URL:

domain.com/tags/TAGNAME/

Где изменяется TAGNAME, соответственно.

Мне удалось выполнить эту работу в моем .htaccess, добавив следующие строки:

RewriteCond %{QUERY_STRING} (^|\?)tag=([^&]+)&page=([0-9]+)($|&)
RewriteRule ^tags\.php$ /tags/%2/page-%3? [R=301,L]
RewriteCond %{QUERY_STRING} (^|\?)tag=([^&]+)($|&)
RewriteRule ^tags\.php$ /tags/%2/? [R=301,L]
RewriteRule ^tags\.php$ /tags/? [R=301,L]

Это работает для описанного выше сценария, однако у меня есть несколько отдельных тегов, которые состоят из 2 слов, разделенных знаком плюс, и для разделения их необходимо преобразовать в дефис.

Для1 тег, используя 2 слова, мне нужно перенаправить следующее:

domain.com/tags.php?tag=TAGNAME+TAGNAME

На это:

domain.com/tags/TAGNAME-TAGNAME/

Любая помощь будет принята с благодарностью. Заранее спасибо.

...