- 상태
- 해결됨
문제 개요
예를 들어 독일어 언어 로캘을 de_DE에서 de_DE_formal로 변경하면 문자열 번역이 더 이상 표시되지 않는 것을 확인할 수 있습니다.
이 문제는 WPML이 일치하는 언어 로캘의 MO 파일을 더 이상 찾을 수 없기 때문에 발생합니다. 이 예시에서는 some-domain-de_DE_formal.mo를 찾으려고 하지만 해당 파일이 존재하지 않습니다. 그 대신 WPML은 some-domain-de_DE.mo에 대한 기록만 가지고 있습니다.
임시 해결 방법
이 문제를 해결하려면 다음 두 가지 작업을 수행해야 합니다.
1. WPML -> 문자열 번역 페이지를 통해 번역한 문자열이 있는 경우 WPML -> 지원 -> 문제 해결 페이지로 이동하여 Show custom MO Files Pre-generation dialog box 버튼을 클릭하세요. 나타나는 대화 상자에서 파란색 버튼을 클릭하여 사용자 정의 MO 파일을 다시 생성하세요.
2. 첫 번째 단계만으로는 누락된 모든 문자열이 복구되지 않을 가능성이 높습니다. 일부 값은 다른 플러그인이나 테마에서 제공하는 기본 MO 파일이 누락되어 발생할 수 있기 때문입니다. 이 문제를 해결하려면 누락된 MO 파일을 찾은 다음 새 언어 코드가 포함된 새 이름을 사용하여 복사본을 만들어야 합니다.
예를 들어 문자열이 일반적으로 woocommerce-de_DE.mo 파일에서 로드되는 경우, 해당 파일을 찾은 다음 현재 로케일과 일치하는 이름인 woocommerce-de_DE_formal.mo를 사용하여 복사본을 만들어야 합니다. 사이트에서 사용하는 누락된 모든 파일을 복사해야 합니다.
이러한 MO 파일을 찾을 수 있는 일반적인 위치는 다음과 같습니다.
- ../wp-content/languages/
- ../wp-content/plugins/plugin-in-question/
- ../wp-content/plugins/plugin-in-question/languages/
마지막으로 데이터베이스의 wp_icl_mo_files_domains 테이블에서도 특정 경로를 찾을 수 있습니다.