eprivalov
@eprivalov
Учусь

Как мне правильно прописать правило RewriteRule для такого условия?

Есть ulr вида site.ru/tovar/semena-ovoschey/semena-arbuza/vostochnyj-ornament. Как мне правильно прописать правило RewriteRule, чтобы получить site.ru/semena-ovoschey/semena-arbuza/vostochnyj-ornament?

Категории отображаются вот так site.ru/category/semena-cvetov нужно получить site.ru/semena-cvetov, т.е. удалить category.

Вот файл .htaccess:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

RewriteCond %{REQUEST_URI} !^category.*$ 
RewriteCond %{REQUEST_URI} ^tovar/(.*)$ 
RewriteRule ^tovar/(.*)$ $1 [R=301,L]

RewriteCond %{REQUEST_URI} !^tovar.*$ 
RewriteCond %{REQUEST_URI} ^category/(.*)$ 
RewriteRule ^category/(.*)$ $1 [R=301,L]
</IfModule>


Но правила не срабатывают, почему? Как их исправить на правильные?
  • Вопрос задан
  • 2313 просмотров
Пригласить эксперта
Ответы на вопрос 1
@ShamblerR
1. редиректы должны стоять перед ЧПУ
2. https://donatstudios.com/RewriteRule_Generator
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы