Все, кажись победил все проблемы.
Для потомков скажу следующее: перенаправление страницы раздела на другую страницу раздела делается так:
RewriteRule ^katalog/spetsodezhda\$ http://test.beztruda.by/product-category/spetsodezhda/ [R=301,L]
Вставлять их нужно как в примере ниже, в строчки, которые создал wordpress.
Sitealert, ecliptica, Спасибо большое. Теперь что-то начинает прояснятся. Синтаксис сделал таким же, как писал человек в этом топике: /ru/forum/608852
Убрал этот бекслеш, сделал как нужно.
Теперь вопрос стоит в том, что работет эта конструкция только в том месте, где сейчас стоит.
Если ее поставить после комментария # Begin - Custom redirects, то она перестает работать. Это значит, что все редиректы разделов нужно в этот промежуток вставлять?
Sitealert, ну это понятно. Если бы делал все так, то все бы работало как надо. Извиняюсь, тему не нашел. Не думал, что она может быть в разделе "сайтостроительство" 😂
Я даже пробовал сделать один единственный редирект используя RewriteRule и вставил его перед другими, но он не работает.
Вот полный .htaccess
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^katalog/spetsodezhda\$ http://test.beztruda.by/product-category/spetsodezhda/ [R=301,L] RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress # Begin - Custom redirects
Это значит, что любая страница после katalog/spetsodezhda/ будет перенаправлятся. Пример:
В файле .htaccess есть такая строка:
Redirect 301 /katalog/spetsodezhda/ http://test.beztruda.by/product-category/spetsodezhda/
И если в строку браузера ввести запрос на вложенную страницу, например /katalog/spetsodezhda/primer, то произойдет редирект на /product-category/spetsodezhda/primer хотя на эту страницу никаких редиректов не прописано.
В общем, нужно сделать редирект с верхней страницы каталога на верхнюю, чтобы это не затрагивало вложенные. Почему то через RewriteRule не работает, но почему - не понятно.
Sitealert, Так и сделал, теперь редиректы по товарам и по разделам работают.
Только это не решение проблемы. Теперь любая вложенная страница, на которую не настроен редирект вообще открываться не будет.
Нашел тему с такой же проблемой, но решение не работает /ru/forum/608852
Может, я что-то не так написал?
RewriteRule ^katalog/spetsodezhda/$ http://test.beztruda.by/product-category/spetsodezhda/ [R=301,L]
Спасибо! не думал, что кэш может влиять на редирект. Они, ведь, на серваке выполняются. Буду знать на будущее:)---------- Добавлено 15.08.2017 в 14:29 ----------До конца проблема не решилась. Но, зато, определил ее источник. Ошибки в редиректах возникают из - за того, что на более "старшие" страницы тоже настроены редиректы.
Redirect 301 /katalog/spetsodezhda/ http://test.beztruda.by/product-category/spetsodezhda/ Redirect 301 /katalog/spetsodezhda/spetsodezhda-letnyaya/ http://test.beztruda.by/product-category/spetsodezhda/spetsodezhda-letnyaya/
Если эти две строчки удалить, то на все товары в каталоге редиректы работают. Но нужно сделать так, чтобы работало все.
Суть в том, что каталог переезжает на плагин в рамках одного сайта.
Подскажите, пожалуйста, как это лучше всего реализовать?
Я уже догадался, но все равно не работает, как надо. Вместо редиректа по конкретной ссылке происходит редирект на совсем другую страницу.
# Begin - Custom redirects Redirect 301 /katalog/spetsodezhda/ http://test.beztruda.by/product-category/spetsodezhda/ Redirect 301 /katalog/spetsodezhda/spetsodezhda-letnyaya/kurtka-muzhskaya-letnyaya-universal-vasilkovaya/ http://test.beztruda.by/product/kurtka-muzhskaya-letnyaya-universal-va/ Redirect 301 /katalog/spetsodezhda/spetsodezhda-letnyaya/polukombinezon-muzhskoy-letniy-universal-vasilkovyiy/ http://test.beztruda.by/product/polukombinezon-muzhskoy-letniy-univ/ Redirect 301 /katalog/spetsodezhda/spetsodezhda-letnyaya/kurtka-muzhskaya-letnyaya-universal-seraya/ http://test.beztruda.by/product/kurtka-muzhskaya-letnyaya-universal-se/
Опять же, из последнего примера с
http://test.beztruda.by/katalog/spetsodezhda/spetsodezhda-letnyaya/kurtka-muzhskaya-letnyaya-universal-seraya/
происходит редирект на
http://test.beztruda.by/product-category/spetsodezhda/spetsodezhda-letnyaya/kurtka-muzhskaya-letnyaya-universal-seraya/
а должен быть на
http://test.beztruda.by/product/kurtka-muzhskaya-letnyaya-universal-se/