При первой загрузке я беру IP-адрес пользователя и перенаправляю его с помощью wp_redirect
на подходящий перевод.
Например, http://website.com
перенаправляет на http://website.com/gb/
Я нашел что при выполнении двух запросов возникают серьезные проблемы с производительностью: сначала перенаправление, а затем перенаправление. Я провел некоторые исследования, и я изо всех сил пытаюсь найти другие возможные решения.
Есть ли способ настроить запрос на новый URL и обслуживать соответствующий переведенный контент без перенаправления пользователя?
Вот краткий пример существующего кода:
function redirect() {
if (!get_user_location_redirect_flag()) :
$pageLanguage = apply_filters( 'wpml_current_language', NULL );
// Makes a single request to geoip
$usersLanguage = get_user_language() ?? 'EN';
if ( $pageLanguage !== $usersLanguage) :
$url = build_redirect_url($usersLanguage);
// Update the flag and prevent further redirects.
set_user_location_redirect_flag(true);
wp_redirect( $url );
die;
endif;
endif;
}
add_action( 'template_redirect', 'redirect' );