从你的问题中,我推断你想要三件事:
读取cookie以查看用户的首选语言如果没有cookie,请检测浏览器语言以查看用户的首选语言根据首选语言将用户重定向到希腊语或英语网站在WordPress中有多种处理cookie的方法。你可以开始看here. 您可以将语言代码存储在cookie中并检索它,然后将其存储在变量中$wpse189348_lang
. 使用以下代码可以轻松检测浏览器语言:
$wpse189348_lang = substr($_SERVER[\'HTTP_ACCEPT_LANGUAGE\'], 0, 2);
// $wpse189348_lang will end up as \'en\' or \'fr\' or some other language code, but may be empty
正如您所见,这种方法并非万无一失
here. 现在您有了语言代码
$wpse189348_lang
您可以使用此
redirect 国际用户访问希腊语网站(“el”是希腊语的语言代码)。
add_action (\'after_setup_theme\', wpse189348_lang_redirect);
function wpse189348_lang_redirect {
// read cookie and/or browser language here to get $wpse189348_lang
if (\'el\' == $wpse189348_lang) {
wp_redirect( \'http://www.analyst.gr\' );
exit;
}
}
由于国际网站可以有许多不同的语言代码,因此您可以使用否定测试以另一种方式重定向:
if (\'el\' !== $wpse189348_lang) {
wp_redirect( \'http://en.analyst.gr\' );
exit;
}
请注意,这是一种相当粗糙的重定向方式。任何更微妙的事情都需要一个插件或大量的工作。