wpml_browser_redirect_language_params
- 类型
- filter
- 类别
- 全站语言信息
- WPML 版本
- 4.0.6
说明
当主题开发者想要使用不同的 cookie 名称,或调整 languageUrls 数组以使用不同的 URL 时,可以使用此过滤器。
它使用 $params 参数,该参数是一个关联数组,包含有关当前语言、活动语言和 cookie 设置的一些信息。
参数
- pageLanguage
- 存储当前语言代码。
- languageUrls
- 存储一个包含当前页面所有翻译 URL 的关联数组。该数组的键是语言代码。同一种语言可以有多个条目,以匹配不同的语言代码组合。例如,在
en_US的情况下,相同的 URL 会重复三次,并使用以下键:en_us、en和us。 - cookie
- 存储一个包含 cookie 设置的关联数组。有关更多详情,请参阅 Document.cookie。键包括:
- name:cookie 的名称(默认为
_icl_visitor_lang_js)。 - domain:必须使用该 cookie 的域名(默认为当前域名,且不应更改)。
- path:cookie 的路径(默认为
/)。 - expiration:以秒为单位的过期时间,读取自 WPML -> 语言中浏览器语言重定向下的记住访客的语言偏好设置值。
- name:cookie 的名称(默认为
使用示例
为了使用此过滤器,必须在 WPML -> 语言中启用浏览器语言重定向。
当语言更改为特定语言时,可以使用以下代码将针对某篇文章的浏览器重定向到主页
function example_callback( $params ) {
global $post;
// Redirect the French language to the home page if the current page ID is 123
if ( $post->ID === 123 ) {
$params['pageLanguage'] = 'en';
$params['languageUrls'] = [ 'fr' => 'http://example.com/fr/' ];
}
return $params;
}
add_filter( 'wpml_browser_redirect_language_params', 'example_callback' );
相关钩子
wpml_decode_custom_field, wpml_footer_language_selector, wpml_add_language_form_field, wpml_ls_exclude_in_menu, wpml_is_rtl, wpml_alternate_hreflang, wpml_head_langs, wpml_must_translate_canonical_url, wpml_active_languages, wpml_encode_custom_field