Intereting Posts
Защита паролем или IP для доступа в процессе разработки. Сайт WordPress иначе показал страницу-заполнитель get_posts не вытягивает правильное количество сообщений Разбиение на страницы пользовательских типов сообщений Как вставить пост 6 раз после регистрации пользователя, например ask.fm Зачем использовать wp_send_json () над echo json_encode ()? Шаблон пользовательского поиска для пользовательских типов сообщений Как я могу работать с плагином SlideDeck? Не удалось войти в первый раз на соленой WordPress, создав pwd на BD Почему каждый подключает add_rewrite_rule для init запрос в category.php повторяет сам Как сделать изображение больше с помощью wp_get_image_editor пользовательские типы сообщений, wp_get_archives и add_rewrite_rule Периодически получение jQuery «… не является функцией» ошибки Автоматический полный поиск Почему я не могу использовать setup_postdata ($ post) на боковой панели?

Изменение структуры постоянных ссылок без потери SEO

Текущая структура: /%year%/%monthnum%/%postname%.html

Желаемая структура – /%postname%/

Поскольку мы уже размещены с URL-адресами, такими как domain.com/2015/04/example-post.html , мы хотим, чтобы люди были перенаправлены на domain.com/example-post/ .

Я уже пытался установить некоторые плагины, такие как Simple 301 Redirects , которые выглядели хорошо, поскольку, похоже, они работают с правилами, как показано на рисунке ниже:

введите описание изображения здесь

Но это не сработало для нас, мы получаем 404 из старых URL 🙁

Добавление 301 правил вручную не является опцией, так как у нас есть тысячи сообщений, выполнение этого с помощью скрипта было бы простым вариантом, но я не думаю, что оптимально иметь тысячи 301 правил, не так ли?

Любое другое предложение?

Solutions Collecting From Web of "Изменение структуры постоянных ссылок без потери SEO"

Для достижения цели вам не нужен плагин. Используйте перенаправление сервера в файле .htaccess потому что он не будет загружать процессор для интерпретации кода WordPress PHP и не будет потреблять время. Перенаправление будет завершено до запуска WordPress.

 RewriteRule ^[0-9]+/[0-9]+/(.*)\.html$ /$1 [R=301,L] 

где

  • [0-9]+/ – числовой год и месяц
  • (.*) является той частью, которую мы будем использовать ниже ( example-post в вашем случае)
  • /$1 – это часть, которую мы получили от выше

301 перенаправление полностью идеально подходит для SEO.

Этот инструмент сделал для меня работу: https://yoast.com/research/permalink-helper.php

там вы входите в старую и новую структуру постоянных ссылок, и она дает одно правило в mi случае:

 RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([^/]+).html$ https://domain.com/$3