Ди

Рейтинг
0
Регистрация
15.08.2017

Все, кажись победил все проблемы.

Для потомков скажу следующее: перенаправление страницы раздела на другую страницу раздела делается так:

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
ecliptica:
Это почему?

---------- Добавлено 16.08.2017 в 16:28 ----------

Вложенная где? В параметре "откуда" или в "куда"?

Это значит, что любая страница после 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/

Если эти две строчки удалить, то на все товары в каталоге редиректы работают. Но нужно сделать так, чтобы работало все.

Суть в том, что каталог переезжает на плагин в рамках одного сайта.

Подскажите, пожалуйста, как это лучше всего реализовать?

ecliptica:
нужно обязательно указывать домен в адресации "куда".

---------- Добавлено 15.08.2017 в 12:54 ----------

http://cdn1.savepice.ru/uploads/2017/8/15/214cfb930aafb1db8ff5ff31608cf65a-full.png

---------- Добавлено 15.08.2017 в 12:54 ----------

Я уже догадался, но все равно не работает, как надо. Вместо редиректа по конкретной ссылке происходит редирект на совсем другую страницу.

# 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/