Google 번역으로 WordPress 플러그인 및 테마를 자동으로 번역하는 방법
게시 됨: 2019-07-31WordPress가 현재 웹사이트의 33% 이상을 차지한다는 통계를 모두 들었습니다. 하지만 플러그인이나 테마가 생태계 내에서 가능한 한 널리 사용될 수 있도록 하려면 어떻게 해야 할까요?
놀랍게도 모든 WordPress 사이트의 절반 미만이 로케일을 영어로 설정했습니다! 번역을 아직 설정하지 않았다면 잠재 고객의 50% 이상이 가장 잘 이해하는 언어로 제품을 사용할 수 없을 것입니다.
제품을 세상에 공개하는 가장 좋은 방법 중 하나는 모든 사용자 대면 텍스트의 고품질 번역을 만드는 것이지만 문제는 번역에 많은 시간이 걸린다는 것입니다(제품 전체에 텍스트가 많을수록 더 많은 문자열이 번역). 또한 번역에는 다양한 언어에 대한 능숙도, MO 및 PO 파일 관리 방법에 대한 지식, 그리고 전반적으로 많은 노력이 필요합니다.
제 이름은 Diego Imbrani이고 2011년부터 플러그인 개발자입니다. 저는 회사 GreenTreeLabs를 통해 플러그인을 판매하고 있으며 제 제품은 현재 전 세계적으로 70,000개 이상의 웹사이트에서 활성화되어 있습니다.
고맙게도 전체 번역 프로세스를 완화하고 플러그인과 테마를 훨씬 쉽게 번역할 수 있는 방법을 찾았습니다.
소개
최근에 내 플러그인 중 하나에 이탈리아어 번역을 추가하고 싶었습니다. WordPress용 Final Tiles Gallery 그래서 번역 가능한 모든 문자열이 포함된 플러그인의 PO 파일을 열고 플러그인을 한 줄씩 번역하기 시작했습니다.
Final Tiles Gallery의 이탈리아어 PO 파일에서 발췌
Final Tiles Gallery의 PO 파일에는 약 350개의 항목이 있으며 모두 번역하는 데 약 2시간이 소요됩니다. 솔직히 말해서 이 작업은 그다지 매력적이지 않습니다. 번역을 찾다가 PO 파일을 자동으로 번역해주는 방법이 없을까 하다가...
저는 Google 번역 API로 약간의 실험을 하고 이 정확한 작업을 수행하기 위해 스크립트를 코딩하기로 결정했습니다! 아래에서 내가 만든 스크립트를 사용하여 WordPress 플러그인 또는 테마를 자동으로 번역하는 방법을 단계별로 안내해 드리겠습니다.
워드프레스와 언어
내 플러그인 번역에 대해 크게 걱정한 적이 없다는 것을 인정해야 합니다. 저는 이탈리아 사람이지만 항상 영어로 된 프로그램과 운영 체제를 사용했습니다. 영어가 아닌 모든 종류의 사용자 인터페이스를 사용하는 것은 "이상한" 느낌입니다. 어쩌면 그건 나뿐이야
WordPress는 배경, 언어, 문화에 관계없이 전 세계 수백만 명의 사람들이 사용합니다. 플러그인과 테마 번역을 무시할 수 없습니다.
WordPress는 배경, 언어 및 문화에 관계없이 전 세계의 수백만 명의 사람들이 사용합니다. 플러그인과 테마 번역을 무시할 수 없습니다.Tweet
저는 매우 유용한 분석 및 통계가 포함된 멋진 대시보드가 있는 Freemius를 사용하여 플러그인을 판매합니다. 며칠 전에 개발자 대시보드 에서 찾을 수 있는 "Top 10 Languages" 표를 보았고 Final Tiles Gallery 가 설치된 많은 사이트가 영어로 되어 있지 않다는 것을 알고 있지만 매우 놀랐습니다. 약 25,000개의 설치 샘플에서 웹사이트의 50% 미만이 영어로 되어 있다는 것을 발견하십시오! 개요는 다음과 같습니다.
보시다시피 프랑스어, 독일어 및 러시아어는 전체 사용자의 거의 20%로 큰 비율을 차지합니다.
플러그인 또는 테마 번역의 이점
WordPress 플러그인 또는 테마 비즈니스의 경우 제품 번역은 여러 가지 이유로 마케팅 기회이기도 합니다.
더 많은 청중
모든 WordPress 사용자가 자신의 언어로 된 번역이 없는 플러그인을 설치하려는 것은 아닙니다. 그것은 여러 가지 이유가 있을 수 있지만 주로 영어를 이해하지 못하기 때문입니다.
다른 경우에 사용자는 영어를 이해할 수 있지만 단순히 자신의 언어를 선호합니다. 따라서 두 개의 유사한 플러그인 중에서 선택이 주어지면 해당 고객은 다른 플러그인이 조금 더 나은 경우에도 자신의 언어로 된 플러그인을 선택할 것입니다.
문화적 이유와도 관련이 있습니다. 예를 들어, 역사적 이유로 특히 기성세대의 프랑스인들은 영어를 좋아하지 않습니다. "프랑스인이 영어를 싫어하는 이유"를 Google에 검색하면 해당 주제에 대한 수십 개의 기사를 찾을 수 있습니다. 게다가 프랑스어의 약 40%만이 실제로 그 언어를 구사합니다. 따라서 제품이 프랑스어로 번역되지 않으면 프랑스어 WordPress 시장 점유율의 60%를 즉시 잃게 됩니다. 그리고 만약 당신의 제품에 대한 프랑스 대안이 있다면, 당신은 아마 그것들을 모두 잃거나 적어도 대다수를 잃게 될 것입니다. 유사한 분석은 아직 "미국화"되지 않은 일본과 같은 많은 아시아 국가와 관련이 있습니다.
WordPress.org SEO
Freemius CEO인 Vova Feldman은 WordPress.org 저장소에서 SEO 번역의 이점에 대해 약간 썼지만 충분히 강조할 수 없습니다. 사실 repo의 검색 알고리즘은 readme.txt의 다른 언어 사용에 매우 민감합니다.
제품 문자열뿐만 아니라 readme.txt에도 번역 노력을 집중하면 리포지토리에 대한 마케팅 도달 범위가 복잡해질 수 있습니다. 대부분의 사용자는 영어로 검색하지만 위에서 언급한 WordPress.org의 로케일 통계에 따르면 영어로 검색하지 않는 사용자가 많기 때문에 해당 사용자가 사용할 수 있는 많은 플러그인과 테마에 제한적으로만 액세스할 수 있습니다. 영어를 이해하는 사람.
알고리즘은 주어진 WordPress 설치의 로케일에 따라 다른 결과를 제공합니다. 제품을 번역하면 일반적으로 도달할 수 없는 사용자에게 노출되는 이 장벽을 극복할 수 있습니다.
Vova는 "요점은 번역이 그 어느 때보다 중요합니다!"라고 말했을 때 이를 아주 잘 표현했습니다. – 그리고 1년이 지난 지금도 여전히 사실입니다.
평판
플러그인이나 테마를 번역하는 것은 고객에게 긍정적인 심리적 영향을 미칩니다. 고객의 언어로 번역을 제공하는 플러그인이나 테마는 더 높은 품질의 제품으로 인식될 수 있습니다. 이는 개발자가 기술적인 문제 이상에 시간을 투자했음을 의미합니다. 고객은 이 가치를 인식하고 따라서 다른 방식으로 제품의 품질을 볼 수 있기를 바랍니다.
자신의 언어로 번역을 제공하는 플러그인이나 테마는 고품질 제품으로 인식될 수 있습니다. 개발자가 기술적인 문제 이상에 시간을 할애했다는 의미입니다.Tweet
기여자
플러그인이나 테마에 번역을 추가하면 무료 플러그인이나 테마를 제공하는 경우 WordPress.org 저장소에서 자발적 번역가의 효과를 얻을 수 있습니다. 일부 언어만 번역된 플러그인은 번역이 전혀 없는 플러그인보다 훨씬 더 인기 있는 것으로 인식되므로 자원 봉사자가 기여하려는 경향이 더 높을 수 있습니다.
Gutenberg 플러그인의 일부 번역 통계 목록
이제 제품 번역의 이점을 이해했으므로 다음 질문은 다음과 같습니다. 몇 개의 언어를 지원해야 합니까?
지원되는 언어 선택
지원할 수 있는 언어의 수에는 제한이 없다는 점부터 시작하겠습니다. 그러나 플러그인이나 테마를 모두 번역하기 전에 몇 가지를 고려해야 합니다.
문제는 Google 번역을 사용하여 모든 언어를 번역하면 필연적으로 잘못된 번역이 있다는 것입니다. 결과 문제는 플러그인 또는 테마의 잘못된 번역에 대한 사용자 피드백을 받을 수 있다는 것입니다.
이 문제를 해결하기 위해 가장 많이 사용되는 언어부터 시작하는 것이 좋으며 이러한 유형의 데이터는 3곳에서 얻을 수 있습니다. 첫 번째는 위에서 언급한 Freemius 개발자 대시보드입니다. Freemius를 사용하지 않는 경우 또 다른 유용한 옵션은 가장 인기 있는 WordPress 로케일을 보여주는 WordPress.org 통계 페이지입니다. 또 다른 확실한 옵션은 제품 웹사이트에 대한 Google Analytics 통계를 보는 것입니다.
구독하고 무료 사본을 받으십시오.
WordPress 플러그인 비즈니스 북
구독 경제에서 번영하는 WordPress 플러그인 비즈니스를 만드는 방법.
친구와 공유
친구의 이메일 주소를 입력하세요. 스카우트님, 이 책만 이메일로 보내드리겠습니다.
공유해 주셔서 감사합니다.
굉장 - 'WordPress Plugin Business Book' 사본이 방금 발송되었습니다. . 우리가 더 널리 알리도록 돕고 싶습니까? 계속해서 친구 및 동료와 책을 공유하십시오.
구독해주셔서 감사합니다!
- 귀하의 'WordPress Plugin Business Book' 사본을 다음 주소로 보냈습니다. .
이메일에 오타가 있습니까? 이메일 주소를 수정하고 다시 보내려면 여기를 클릭하세요.
숫자가 가리키는 곳마다 사용자가 가장 많은 언어를 선택할 수 있습니다. 해당 청중에게 먼저 몇 가지 번역을 제공하는 경우 공개적으로 릴리스하기 전에 일부 고객이나 동료에게 번역을 검토하도록 요청할 수 있으므로 사소한 번역 문제에 대한 고객의 피드백에 압도되지 않습니다. Fiverr에는 번역 확인을 도와줄 수 있는 수많은 전문가가 있습니다. 플러그인 또는 테마의 WP 관리 설정에 알림을 추가하여 지원을 제출하는 대신 WordPress.org 저장소에서 번역 업데이트를 제안하도록 사용자에게 알리면 지원 부하를 더욱 최소화할 수 있습니다. 티켓.
각 언어에 대해 이 단계별 프로세스를 따르는 것은 고품질 번역을 달성하고 지원 대기열이 수많은 작은 티켓으로 넘쳐나는 것을 방지할 수 있는 논리적인 방법입니다.
Google 번역 API를 사용하여 플러그인/테마 번역
Google Cloud는 번역을 서비스로 사용할 수 있도록 API를 제공합니다.
Google 번역 API 가격
API 버전 3은 월 500,000자까지 무료이며 할당량을 초과하는 경우 백만 자당 $20입니다. 여기에서 가격 정보를 읽을 수 있습니다.
Google 번역 API 가격(2019년 5월)
간단한 참고 사항 - 국제화
모든 플러그인은 현지화 되기 전에 국제화 되어야 합니다. 시작하기에 좋은 곳은 단계를 설명하는 WordPress.org 가이드 I18n for WordPress Developers입니다. .pot/.po 파일을 생성했으면 아래의 스크립팅 프로세스를 진행할 수 있습니다.
모든 플러그인은 현지화되기 전에 국제화되어야 합니다. 시작하기에 좋은 곳은 WordPress.org의 단계를 설명하는 WordPress 개발자용 가이드 I18n입니다.Tweet
스크립트를 작성합시다!
스크립트를 실행하기 전에 Google Cloud 콘솔에서 새 프로젝트를 만들어야 합니다. 이 작업에 도움이 필요하면 이 가이드를 확인하거나 다음 단계를 따르세요.
- https://console.developers.google.com으로 이동하여 로그인합니다.
- "조직 없음"을 클릭하거나 원하는 조직을 선택합니다(조직이 없다고 가정).
3. "새 프로젝트"를 클릭합니다.
4. 프로젝트 이름을 입력하고 "만들기"를 클릭합니다.
5. 이제 콘솔 대시보드로 리디렉션되어야 합니다. "API 및 서비스 활성화"를 클릭합니다.
6. "Cloud Translation API"를 검색합니다.
7. "활성화"를 클릭합니다.
이제 프로젝트가 있으므로 Google API에 대한 요청을 승인하기 위해 서비스 계정을 설정해야 합니다. Google Cloud 플랫폼에서 이 가이드의 1단계와 2단계를 수행할 수 있습니다. 그렇지 않으면 다음 단계를 따르세요.
- 기본 메뉴 "IAM 및 관리자"에서 "서비스 계정" 섹션으로 이동합니다.
2. "서비스 계정 만들기"를 클릭합니다.
3. 서비스 계정의 이름과 설명을 입력하고 "만들기"를 클릭합니다.
4. 필요하지 않은 역할 선택을 건너뛰려면 "계속"을 클릭합니다.
5. 이제 "Create key"를 클릭한 다음 "Create"를 클릭하고 JSON 형식을 선택했는지 확인합니다.
6. 키를 생성하면 브라우저가 자동으로 키를 다운로드합니다. 나중에 필요하므로 파일을 저장할 폴더를 기억하십시오.
이제 모든 준비가 끝났지만 스크립트를 실행하기 전에 가이드에 설명된 대로 GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 설정했는지 확인하세요.
예: Linux 또는 macOS
[PATH] 를 서비스 계정 키가 포함된 JSON 파일의 파일 경로로 바꿉니다.
export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
예를 들어:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
예: Windows:
[PATH] 를 서비스 계정 키가 포함된 JSON 파일의 파일 경로로 바꾸고 [FILE_NAME] 을 파일 이름으로 바꿉니다.
PowerShell 사용:
$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
예를 들어:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"
명령 프롬프트 사용:
set GOOGLE_APPLICATION_CREDENTIALS=[PATH]
지루한 작업을 마쳤으니 이제 번역을 시작할 수 있습니다!
- https://github.com/GreenTreeLabs/po-gtranslator에서 저장소 복제
- 명령줄을 열고 다음 명령을 실행합니다.
- Git 클론 https://github.com/GreenTreeLabs/po-gtranslator.git
- git이 설치되어 있지 않다면 여기에서 다운로드할 수 있습니다.
- 디렉토리 번역기 입력:
cd po-gtranslator
- 종속성을 설치합니다.
npm install
- npm 유틸리티가 없는 경우 여기에서 Node.js를 설치해야 합니다.
- 필요한 모든 매개변수를 사용하여 스크립트를 실행합니다.
node po-gtranslator.js --project_id=final-tiles-gallery --po_source=it.po --po_dest=it_IT.po --mo=it.mo --lang=it
각 매개변수를 살펴보겠습니다.
--project_id
: Google 프로젝트의 ID, Google Cloud Console에서 가져올 수 있습니다.
--po_source
: 번역하려는 빈 PO 파일의 경로
--po_dest
: 번역이 있는 PO 파일의 경로
--mo
: MO 파일의 경로
--lang
: 번역하려는 언어의 코드
소스 PO 파일은 번역되지 않은 상태로 유지되며 필요한 만큼 많은 언어를 생성하는 데 사용할 수 있습니다. 플러그인이나 테마에 추가해야 하는 PO 파일은 각 언어마다 고유한 –po_dest로 전달하는 파일입니다.
po-gtranslator.js가 작동 중입니다!
저와 함께 스크립팅해주셔서 감사합니다!
이 과정을 이해하는 것은 저에게 재미있는 학습 경험이었고 번역 노력에 도움이 되었기를 바랍니다. 저에게 @GreenTreeLabs로 연락하거나 질문이나 피드백이 있으면 아래에 의견을 보내주십시오.