Изменение структуры постоянных ссылок (URL) в WordPress — задача, с которой рано или поздно сталкивается каждый владелец сайта. Особенно это актуально при редизайне сайта, переходе на новую тему или изменении логики URL для SEO-оптимизации. Но проблема в том, что резкая смена URL без правильной настройки может привести к потере позиций в поисковых системах и падению трафика.
Почему важно правильно менять структуру ссылок
Структура URL влияет на восприятие сайта поисковыми системами и пользователями. Чистые, понятные и логичные URL повышают кликабельность и удобство навигации. Однако, если просто изменить структуру в настройках WordPress, то старые ссылки станут недоступными, и поисковики будут видеть ошибки 404.
Чтобы избежать потерь, нужно:
- Настроить 301 редиректы с устаревших URL на новые;
- Обновить внутренние ссылки, если они жестко прописаны;
- Проверить карты сайта и уведомить поисковые системы о изменениях.
Как изменить структуру ссылок в WordPress
В WordPress структура постоянных ссылок настраивается в Настройки > Постоянные ссылки. Там можно выбрать один из стандартных вариантов или создать собственную структуру с помощью тегов, например:
/blog/%postname%/— для блога;/%category%/%postname%/— с категорией;/%post_id%/%postname%/— с ID записи и названием.
Но просто сменить здесь структуру недостаточно. Если сайт уже проиндексирован, нужно настроить редиректы.
Настройка редиректов с помощью плагинов для WordPress
Чтобы не писать сложные правила вручную, удобно использовать плагины:
Плагин Redirection
Redirection — самый популярный и простой плагин для управления 301 редиректами. Он позволяет:
- Автоматически создавать редиректы при смене URL записей;
- Настраивать массовые и индивидуальные правила;
- Отслеживать ошибки 404 и быстро их исправлять.
Пример настройки редиректа для смены структуры:
Source URL: /old-category/(.*)/$
Target URL: /new-category/$1/
Regex: включен
Это правило перенаправит все записи из категории old-category в новую структуру new-category.
Плагин WPS Clearfy Pro для оптимизации SEO
Clearfy Pro из WPSHOP помогает оптимизировать сайт и включает функции для SEO, в том числе управление редиректами и очистку лишних параметров в URL.
Ручной способ создания редиректов через .htaccess
Если вы не хотите устанавливать плагины, можно прописать правила редиректов в файле .htaccess (для сайтов на Apache). Например:
# Редирект со старой структуры на новую
RewriteEngine On
RewriteRule ^old-category/(.*)$ /new-category/$1 [R=301,L]
Важно тестировать правила, чтобы избежать циклов редиректов и ошибок.
Обновление внутренних ссылок и карты сайта
После смены структуры важно найти и обновить все внутренние ссылки, которые жестко прописаны в контенте или шаблонах. Это можно сделать с помощью плагина Search & Replace или вручную.
Также необходимо сгенерировать новую карту сайта и отправить её в Google Search Console и Яндекс.Вебмастер, чтобы поисковые системы быстрее переиндексировали новые URL.
Пример кода для автоматической генерации 301 редиректа при смене URL записи
Если вы разрабатываете собственное решение, можно использовать хук template_redirect для проверки и перенаправления:
function wpexpert_redirect_old_url() {
if (is_singular('post')) {
global $post;
$old_slug = get_post_meta($post->ID, '_wpexpert_old_slug', true);
if ($old_slug && $_SERVER['REQUEST_URI'] === '/'. $old_slug .'/') {
wp_redirect(get_permalink($post->ID), 301);
exit;
}
}
}
add_action('template_redirect', 'wpexpert_redirect_old_url');
Этот код проверяет, если запрошен старый URL, и делает 301 редирект на новый. Для его работы нужно при смене ссылки сохранять старый слаг в метаполе _wpexpert_old_slug.
Заключение
Изменение структуры ссылок в WordPress без потери позиций — задача, требующая внимательности и правильной настройки. Используйте плагины для удобства, не забывайте про 301 редиректы и обновление внутренних ссылок. Только так вы сохраните SEO-показатели и обеспечите комфорт пользователям.