Попался сайт, на котором были ужасные URL с русскими символами что негативно сказывалось как на удобстве использования сайта, так и на SEO.
Исходная ситуация
- Сайт типа Интернет-магазин запчастей на базе WordPress & WooCommerce
- Все ссылки без конвертации в латиницу
- Ужасно смотрится когда просто передаешь ссылку по почте или через сообщения
- Плохо влияет на SEO
Задача
Конвертировать все ссылки в латиницу без потери SEO трафика.
Решения:
- Поставили плагин Cyr3Lat, для транслитирации — ссылки конвертировались в латиницу
- Далее настроили постоянные ссылки (ЧПУ) так чтобы префиксы были тоже на латинице
Сохранение трафика из поиска
Вот тут нас ждет риск потери трафика из поисковых систем
Все было бы хорошо. Но изменение достаточно резкое, и теперь все ссылки из поиска — начали выдавать 404. А это означало что скоро сайт потеряет весь трафик, упадут продажи и можно на долго вылететь из поиска.
Были адреса типа: site.domain/запчасти-для-колясок/ремень-123
Нужно сделать переадресацию так: site.domain/catalog/remen-123
Готовыми плагинами решить проблему не удалось.
Пришлось писать код:
<?php
/*
* Plugin Name: @Redirect Ru > En
* Description: Переадресация страниц старых с русскими ссылками на английские. Временное решение. Пока идет переиндексация.
* Author: uptimizt
* Author URI: https://github.com/uptimizt
* Version: 0.1
*/
add_action('wp', function(){
global $wp;
$prefix = 'запчасти-для-колясок/';
if(empty($wp->request)){
return;
}
$request = urldecode($wp->request);
if(stripos($request, $prefix) === false){
return;
}
$request = str_replace($prefix, '', $request);
$request = sanitize_title($request);
$url = 'https://site.domain/catalog/' . $request . '/';
wp_redirect($url, 301);
exit;
});
Описание сниппета:
$prefix — тут задаем префикс, который надо проверять на совпадение
$request — смотрим что запросили, и конвертируем в латиницу
$url — направляем на новый адрес с учетом латинского варианта названия
здравствуйте
плагин https://ru.wordpress.org/plugins/cyrlitera/ не подошел?
там как раз есть функционал *Перенаправление со старых URL на новые*
Здравствуйте Плагин WP Translitera тоже перенаправляет при смене ЧПУ.