안녕하세요. polylang을 이용하여 다국어 페이지를 제작 중입니다.
kboard 자료들을 찾아보니 kboard를 사용하여 다국어 페이지를 제작할 때는 멀티사이트를 권장하고 있네요.
하지만 제가 만들고 있는 사이트는 유료 플러그인들이 있어서 멀티사이트를 제작할 시 플러그인의 라이선스 비용이 증가하게 됩니다.
1도메인 1라이선스를 가지고 있는 플러그인들이 있는데 비용이 결코 만만치 않습니다.
그래서 어렵고 손이 많이 가지만 polylang을 이용하여 다국어 페이지를 제작하고 있고 몇가지 이슈가 있는 상황입니다.
이미 제가 가지고 있는 이슈들이 있을꺼라 생각하고 이슈를 검색해서 수정하고자 했으나 검색 결과가 많고 제가 원하는 자료를 찾는데 오히려 더 많은 시간이 들고 있어 질문드리니 양해 부탁드립니다.
1. 회원가입 및 회원 정보 변경 페이지 번역
1) 필드 번역
- 회원 가입 및 회원 정보에 나와있는 필드 중 제가 임의로 추가한 필드들은 번역이 안되고 그대로 한글로 출력이 되고 있습니다.
2) 문구 번역
- '이용 약관에 동의합니다'라는 문구가 'I agree to 이용 약관' 이라고 번역이 되고 있습니다.
3) 힌트 번역
- 아이디 필드에 힌트를 '이메일 입력'이라고 해놨는데 힌트 또한 번역하는 방법이 있을까요.
4) 이용약관, 개인정보처리방침 번역
- 회원 가입 화면에 있는 이용약관, 개인정보처리방침 부분 또한 번역하는 방법이 필요합니다.
2. 회원 정보 페이지 링크 변경
- https://imgur.com/a/SMjnMSx 링크를 보시면 회원 정보 변경, 비밀번호 변경, 로그아웃 3개의 링크가 있습니다.
- polylang 적용 시 회원 정보 변경, 비밀번호 변경 링크는 정상적으로 /en, /ja 와 같이 다국어 페이지로 링크를 잘해주고 있습니다.
- 문제는 로그아웃 링크입니다. polylang을 이용하여 페이지가 제작되어 있어 /en, /ja 다국어 페이지에서 로그아웃을 클릭하면 무조건 한글 사이트로 리다이렉트되는 현상이 있어 저는 다른곳의 로그아웃 링크를 아래처럼 구현해 놓은 상황입니다.
- /en 로그아웃 링크 : https://comm.philch.or.kr/en/signup/?a=logout
- /ja 로그아웃 링크 : https://comm.philch.or.kr/ja/会員登録/?a=logout
- 위 2개 링크로 로그아웃을 하면 무조건 한글 도메인으로 리다이렉트되는 현상이 있어서 functions.php에 아래와 같이 구현을 해놓았습니다.
add_action('wp_logout', 'my_wp_logout');
function my_wp_logout() {
if (get_locale() == 'ko_KR') {
wp_redirect('한국어 페이지');
}
else if (get_locale() == 'en_GB') {
wp_redirect('영어 페이지');
}
else if (get_locale() == 'ja') {
wp_redirect('일어 페이지');
}
exit;
}
- 그래서 질문드리고 싶은 사항은 https://imgur.com/a/SMjnMSx 의 로그아웃 링크의 리다이렉트되는 주소를 변경하는 방법을 알고 싶습니다.
감사합니다.
안녕하세요~^^
wp-members 에서 추가한 필드는
번역이 되는 것이 아니라 입력된 값 그대로 표시됩니다.
따라서 회원가입 시 관한 내용을 번역하고자 하신다면
wpmem_register_form_rows 필터를 이용하시면 될 듯 합니다.
add_filter('wpmem_register_form_rows', 'wpmem_register_form_rows_20211021', 10, 2);
function wpmem_register_form_rows_20211021($rows, $toggle){
if($toggle == 'new'){
// 회원가입 페이지에서만 실행됩니다.
if(get_locale() == 'ko_KR'){ // 한국어 일 때
// 내용을 입력하세요.
}
else if(get_locale() == 'en_GB'){ // 영어 일 때
// 내용을 입력하세요.
}
}
return $rows;
}
테마의 functions.php 파일에 코드를 추가하거나
Code Snippets 플러그인을 사용해서 코드를 추가할 수 있습니다.
마이페이지 메뉴의 내용이나 순서를 변경하시려면
wpmem_member_links_args 필터를 사용하실 수 있습니다.
get_locale() 함수와 함께 사용하면 원하는 목적을 이루실 수 있을 듯 합니다.
아래 링크를 참고하여 적용해보시겠어요
https://www.cosmosfarm.com/threads/document/35060
고맙습니다.