Как сделать 301 редирект с /category/ на /customname/

6 февр. 2011 г., 12:34:33
Просмотры: 18.9K
Голосов: 0

Я изменил "базу категорий" в настройках WordPress со стандартного "category" на "customname".

Теперь получаю 404 ошибки по ссылкам со старым слагом категории, например: mysite.com/category/names

Что нужно вписать в .htaccess для 301 редиректа:

mysite.com/category/xxx

на

mysite.com/customname/xxx

Спасибо,

0
Все ответы на вопрос 3
3
13

В этом случае ваш друг - файл .htaccess. Вы можете создать 301 редирект со старой базы категорий на новую следующим образом:

RewriteEngine on
RewriteBase /
RewriteRule ^old_dir/(.*) http://www.example.com/new_dir/$1 [R=301,L]

Замените old_dir на название категории, example.com на ваш домен и new_dir на ваше пользовательское название.

Надеюсь, это поможет. Охад.

6 февр. 2011 г. 13:02:39
Комментарии

это почти работает. Оно перенаправляет "всё" на: example.com/new_dir

Например, http://www.example.com/old_dir/news/

перенаправляется на

http://www.example.com/new_dir/

но вместо этого должно перенаправлять на

http://www.example.com/new_dir/news

Что нужно изменить? Спасибо.

Hayden Hayden
6 февр. 2011 г. 13:21:02

да, моя ошибка, я обновил код.

Bainternet Bainternet
6 февр. 2011 г. 13:45:33

да, классное редактирование, лол! ты выиграл, приятель. чёрт возьми

Hayden Hayden
6 февр. 2011 г. 15:08:30
0

RewriteEngine on RewriteBase / RewriteRule ^old_dir/(.*) http://www.example.com/new_dir/$1 [R=301,L]

Это прекрасно работает у меня.

4 авг. 2016 г. 17:01:40
7
-1

Хорошо, после долгих часов поиска в Google (которые я провел перед тем, как написать здесь) я нашел ответ! Но на этот раз я загуглил начальную часть предложенного вами правила перезаписи:

RewriteRule ^olddir/

что привело меня к этой странице, где я нашел решение:

RewriteRule ^olddir/?(.*)$ newdir/$1 [R=301,L]

Надеюсь, это поможет кому-то еще. Теперь осталось найти правило перезаписи для: Как сделать редирект с /category/sci-fi/ на /category/scifi/?

Спасибо.

6 февр. 2011 г. 13:49:49
Комментарии

таким же образом. RewriteRule ^sci-fi/?(.*)$ scifi/$1 [R=301,L]

Bainternet Bainternet
6 февр. 2011 г. 13:53:05

Почему вы поставили минус моему ответу?

Нет, это не так же, потому что URL это site.com/category/scifi, а НЕ site.com/scifi.

Hayden Hayden
6 февр. 2011 г. 14:17:06

что???? какое отношение RewriteRule ^sci-fi/?(.*)$ scifi/$1 [R=301,L] имеет к минусу? это для ответа с таким же кодом, как у меня, который появился через 3 минуты после моего. извините, но если вам так плохо, отредактируйте свой ответ, и я уберу минус

Bainternet Bainternet
6 февр. 2011 г. 14:43:43

Я просто пытаюсь помочь тебе, приятель.

Bainternet Bainternet
6 февр. 2011 г. 14:44:48

Код, который ты опубликовал, выгружал всё в ОДНО абсолютное местоположение. Поэтому я поискал и нашёл правильный код, который изменяет ТОЛЬКО страницу /dir/ в URL, и опубликовал его с источником. Так что я не вижу причин понижать рейтинг моего ответа, когда мой код делает нечто другое.

Hayden Hayden
6 февр. 2011 г. 14:58:54

Хорошее редактирование. Спасибо за твою "помощь", то есть за минус.

Hayden Hayden
6 февр. 2011 г. 15:02:48

Что? Чувак, ты задал вопрос, я ответил, ты прокомментировал, я отредактировал свой ответ, а потом ты нашёл тот же самый ответ и опубликовал его. У каждого поста и правки есть временная метка.

Bainternet Bainternet
6 февр. 2011 г. 15:40:16
Показать остальные 2 комментариев