wpml_browser_redirect_language_params
- Loại
- filter
- Danh mục
- Thông tin ngôn ngữ toàn trang web
- Phiên bản WPML
- 4.0.6
Miêu tả
Bộ lọc này có thể được sử dụng khi nhà phát triển giao diện muốn sử dụng một tên cookie khác hoặc tinh chỉnh mảng languageUrls để sử dụng các URL khác nhau.
Nó sử dụng đối số $params là một mảng kết hợp chứa một số thông tin về ngôn ngữ hiện tại, các ngôn ngữ đang hoạt động và các cài đặt cookie.
Tham số
- pageLanguage
- Lưu trữ mã ngôn ngữ hiện tại.
- languageUrls
- Lưu trữ một mảng kết hợp chứa tất cả các URL bản dịch của trang hiện tại. Các khóa của mảng là các mã ngôn ngữ. Cùng một ngôn ngữ có thể có nhiều mục nhập để khớp với một tổ hợp các mã ngôn ngữ khác nhau. Ví dụ, trong trường hợp của
en_US, cùng một URL được lặp lại ba lần với các khóa sau:en_us,envàus. - cookie
- Lưu trữ một mảng kết hợp với các cài đặt cookie. Vui lòng tham khảo Document.cookie (mở trong tab mới) để biết thêm chi tiết. Các khóa bao gồm:
- name: tên của cookie (mặc định là
_icl_visitor_lang_js). - domain: miền mà cookie phải được sử dụng (mặc định là miền hiện tại và không dành để thay đổi).
- path: đường dẫn của cookie (mặc định là
/). - expiration: thời gian hết hạn tính bằng giây được đọc từ giá trị thiết lập trong Ghi nhớ tùy chọn ngôn ngữ của khách truy cập có thể tìm thấy trong Chuyển hướng ngôn ngữ trình duyệt tại WPML → Cài đặt → Ngôn ngữ.
- name: tên của cookie (mặc định là
Ví dụ sử dụng
Để sử dụng bộ lọc này, Chuyển hướng ngôn ngữ trình duyệt phải được bật tại WPML → Cài đặt → Ngôn ngữ.
Đoạn mã sau có thể được sử dụng để chuyển hướng trình duyệt đến trang chủ cho một bài viết khi ngôn ngữ được thay đổi sang một ngôn ngữ cụ thể
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' );
Các hook liên quan
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