> CMS 튜토리얼 > Word누르다 > WordPress I18N : 플러그인 번역을 준비하십시오

WordPress I18N : 플러그인 번역을 준비하십시오

Jennifer Aniston
풀어 주다: 2025-02-19 12:37:11
원래의
296명이 탐색했습니다.

WordPress I18N : 플러그인 번역을 준비하십시오 이전 포스트에서, 나는 WordPress 국제화의 기본 사항을 다루었습니다 (i18n으로 약칭). 현지화 된 WordPress 버전을 설치하는 방법과 기존 WordPress 사이트를 현지화 된 버전으로 쉽게 변환 할 수있는 방법. 이 기사에서는 WordPress 플러그인을 국제화하는 과정을 안내해 드리겠습니다. 프로세스는 어렵지 않으며 지식이 획득되면 WordPress 플러그인을 다른 언어로 쉽게 번역 할 수 있습니다.

. 키 테이크 아웃

국제화 (I18N)는 다른 언어로 쉽게 번역 될 플러그인을 개발하는 프로세스이며, 현지화 (L10N)는 국제화 된 플러그인을 새로운 언어로 번역하는 후속 프로세스입니다.

.
WordPress 플러그인 번역 준비를하는 것은 전 세계 잠재 고객에게 도달하고 사용자 경험을 향상 시키며 다른 언어를 사용하는 사용자가 액세스 할 수 있도록하여 사용자 기반을 늘리는 데 중요합니다. <making> 번역을 준비하는 프로세스에는 번역 헤더 (텍스트 도메인 및 도메인 경로), 텍스트 도메인로드 및 문자열, 자리 표시 자, HTML, 복수, 컨텍스트 및 번역 스트링과 같은 다양한 요소를 국제화하는 것이 포함됩니다. > WordPress I18N은 GNU GetText Localization Framework를 사용하여 텍스트를 변환하기위한 도구를 제공합니다. 여기에는 __ () 또는 _e () 함수로 모든 텍스트 문자열을 감싸고 플러그인의 모든 번역 가능한 문자열이 포함 된 .pot (휴대용 객체 템플릿) 파일을 작성하는 것이 포함됩니다. <p> <ization> 국제화와 현지화의 차이 수년에 걸쳐 개발자들은이 용어의 의미를 오해하는 경향이 있습니다 - 국제화 및 현지화. </ization></p> <the> 국제화는 플러그인을 개발하는 프로세스이므로 다른 언어로 쉽게 변환 할 수 있습니다. 현지화는 국제화 된 플러그인을 새로운 언어로 번역하는 후속 프로세스를 설명합니다. <h2> <y> 국제화는 종종 i18n ( 'i'와 'n'사이에 18 개의 글자가 있기 때문에)과 함께 L10N으로 약식되어있다 ( 'l'과 'L'과 사이에 10 글자가 있기 때문에 현지화는 약칭되었다는 점에 주목할 가치가있다. 'n'.) </y> </h2> > 왜 국제화됩니까? <ul> <simple> 대답은 간단합니다. WordPress는 전 세계적으로 다양한 언어로 사용됩니다. 플러그인이 국제화되면 플러그인을 자신의 언어로 사용함으로써 분명히 혜택을 볼 수있는 전 세계의 다른 지역에서 더 많은 청중을 유치합니다. <er> 개발자로서 다른 언어를 사용하지 않기 때문에 현지화 된 플러그인 버전을 제공 할 시간이 없을 수도 있습니다. 그러나 플러그인을 국제화 할 때 소스 코드를 수정하지 않고도 다른 사람들이 현지화를 생성 할 수 있도록 도어를 열어 두십시오.<ization ization> 플러그인 국제화 <h2> <are> 이제 우리는 플러그인 국제화 및 현지화의 개념에 익숙해 져서 플러그인을 번역 할 준비를하는 과정을 살펴 보겠습니다. 번역 헤더 세트 <to> 플러그인을 번역 할 수있는 첫 번째 단계는 플러그인 헤더에 번역 헤더를 포함시키는 것입니다. 번역 헤더는 텍스트 도메인과 도메인 경로입니다. </to></are> </h2> <ain> 텍스트 도메인은 플러그인에 속하는 모든 텍스트를 나타냅니다. WordPress가로드 된 모든 번역을 구별 할 수있는 고유 식별자입니다. 이렇게하면 이미 기존 WordPress 도구를 사용하면 이식성이 향상되고 더 잘 진행됩니다. <p> <ain> 텍스트 도메인은 플러그인의 슬러그와 일치해야합니다. 예를 들어, 플러그인이 Sample-Plugin.php라는 단일 파일 인 경우 샘플-플러그 인이라는 폴더에 포함되어있는 경우 </ain></p> 텍스트 도메인 <h3>는 샘플-플러그 인이어야합니다. <text> 텍스트 도메인의 메모 <ain> 텍스트 도메인 이름은 밑줄이 아닌 대시를 사용해야합니다. </ain></text> </h3> <the> 텍스트 도메인이 플러그인 슬러그와 일치해야한다고 기억하십니까? 결국 그것은 사실이 아닐 수도 있습니다. 플러그인 슬러그 대신 플러그인 중 하나를 사용한 빠른 실험을 수행했는데 고유 한 텍스트를 사용했으며 아무런 문제없이 작동했습니다. <p>. <ensure> 도덕 : 텍스트 도메인이 고유한지 확인하여 다른 플러그인의 도메인과 충돌하지 않도록하십시오. <path> 도메인 경로는 폴더 WordPress가 .mo 번역 파일을 검색하는 폴더입니다. 기본적으로 WordPress는 번역 파일을 사용할 플러그인 디렉토리를 검색합니다. 플러그인의 루트 폴더에 번역 파일이 플러그인 구조를 구분할 수 있습니다. <to> 변환 파일을 폴더에 보관하려면; /언어, 도메인 경로 헤더를 사용하여 WordPress에 대해 알릴 필요가 있습니다. </to></path></ensure></p> 아래는 번역의 전형적인 헤더입니다. <p> <ain>로드 텍스트 도메인 </ain></p> <would> 이제, 우리는 rod_plugin_textdomain () 함수를 사용하여 WordPress를 사용자의 언어에 존재하는 경우 번역 파일을로드하도록 지시합니다. 아래는 함수 시놉시스입니다. <p> <eter> 첫 번째 매개 변수 $ 도메인은 텍스트 도메인이어야합니다. $ abs_rel_path는 더 이상 사용되지 않았으며 false로 설정해야합니다. 마지막으로 $ plugin_rel_path는 번역 파일의 상대 경로입니다 <mo> 번역 MO 파일이 플러그인 자체 디렉토리에있는 경우 다음과 같이 사용하십시오. </mo></eter></p> 변환 MO 파일이 플러그인 언어 서브 디렉토리에있는 경우 다음과 같이 사용하십시오 <p> <call> 당신은 rod_plugin_textdomain 함수 만 호출하지 않고 플러그인에서 플러그인에서 호출해야합니다. <em> <into> 플러그인 i18n 에 대한 깊이 다이빙 <text> 이제 텍스트 도메인과 도메인 경로 헤더가 설정되었으므로 이제 플러그인을 국제화하는 방법을 배울 차례입니다. <of>이 튜토리얼의 세그먼트는 다음으로 나뉩니다.<ol> <ation> 문자열 번역 자리 표시 자 사용 <ers> <l> html 번역 <pl> 복수를 다루는 <uation> 컨텍스트에 의한 명확성 <transl> 도피 번역 문자열 <li> <the> 참고 : 문자열 ESPW-Plugin 은이 자습서에서 텍스트 도메인으로 사용됩니다. </the> </li> 1. 문자열 번역 <string> 플러그인에서 문자열을 번역 할 수 있으려면 원래 문자열을 다음과 같이 __ () 함수 호출로 감싸십시오. <li> <to> 에코 언어 구조 대신 브라우저에 문자열을 에코하려면 _e 함수를 사용하십시오. </to> </li> <li> 2. 자리 표시 자 사용 PHP 및 WordPress 개발자로서 자리 표시자가 무엇인지 알고 있다고 가정합니다. 자세한 내용은 Sprintf 및 Printf () PHP 문서를 빠르게 훑어 볼 수 있습니다. <using> 아래 예제와 같은 문자열에서 변수를 사용하는 경우 자리 표시자를 사용해야합니다. </using> </li> <is> 올바른 방법은 다음과 같이 printf () 함수를 사용하는 것입니다. <li> <code> WordPress 플러그인 저장소에서 호스팅 된 일부 플러그인의 코드를 통해 다음과 같은 것을 볼 수 있습니다. </code> </li> <li> <ings> 줄은 이제 번역 가능하지만 PHP 변수 $ City도 번역 가능합니다. </ings> </li> <bad> 이것은 번역기가 변수를 잘못 변경하거나 악의적 인 코드를 플러그인 코드베이스에 실수로 바꿀 수 있기 때문에 나쁜 관행입니다. 결국 플러그인 오작동이 만들어집니다. <li>. <f> sprintf 함수는 자리 표시기를 사용하여 문자열을 형식화하고 Printf는 형식화 된 문자열을 출력하고 sprintf는 문자열을 반환한다는 점에서 printf와 유사합니다. <following> 예 : 다음 코드는 형식화 된 문자열을 변수 $ 텍스트에 할당합니다. </following></f> </li> </bad></is></string></transl></uation></pl></l></ers></ation> </ol> 3. HTML 번역 번역 가능한 문자열에 html을 포함하는 <m>는 컨텍스트에 따라 다릅니다 <a> 예제는 링크입니다 (주변 텍스트와 분리) : <p> </p> 또 다른 예는 단락의 링크입니다 (주변 텍스트와 분리되지 않음). <h4> </h4> 4. 복수를 다루는 <changes> _n () 함수를 사용하여 변경 될 때 변경 될 때 변경되는 문자열. 이 함수는 4 개의 인수, 즉 를 받아들입니다 <p> <the> 단수 - 문자열의 단일 형태 <the> 복수 - 문자열의 복수 형태 </the></the></p> <number> count - 단수 또는 복수 형태를 반환 해야하는지 여부를 결정하는 객체의 수 텍스트 도메인 - 플러그인 텍스트 도메인 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><span><span><?php </span></span><span><span>/* </span></span><span><span> Plugin Name: Enable Shortcode and PHP in Text widget </span></span><span><span> Plugin URI: http://w3guy.com/shortcode-php-support-wordpress-text-widget/ </span></span><span><span> Description: Enable shortcode support and execute PHP in WordPress's Text Widget </span></span><span><span> Author: Agbonghama Collins </span></span><span><span> Version: 1.2 </span></span><span><span> Author URI: http://w3guy.com </span></span><span><span> Text Domain: espw-plugin </span></span><span><span> Domain Path: /languages/ </span></span><span><span> */</span></span>
로그인 후 복사
로그인 후 복사

_n () 함수가 어떻게 작동하는지 이해하기위한 몇 가지 예를 보자. 영어로 "하나의 의견"과 "두 개의 댓글"이 있습니다. 다른 언어에서는 여러 개의 복수형을 가질 수 있습니다 아래 코드는 _n () 함수를 사용하여 이러한 시나리오를 처리하는 방법을 보여줍니다.

코드 설명 위의 코드는이 세 가지 함수로 구성됩니다 - printf, _n 및 number_format_i18n. 쉽게 동화하기 위해 함수 코드는 설명 된 각 함수 구성 요소와 해부됩니다.
<span><span><?php
</span></span><span><span>/*
</span></span><span><span> Plugin Name: Enable Shortcode and PHP in Text widget
</span></span><span><span> Plugin URI: http://w3guy.com/shortcode-php-support-wordpress-text-widget/
</span></span><span><span> Description: Enable shortcode support and execute PHP in WordPress's Text Widget
</span></span><span><span> Author: Agbonghama Collins
</span></span><span><span> Version: 1.2
</span></span><span><span> Author URI: http://w3guy.com
</span></span><span><span> Text Domain: espw-plugin
</span></span><span><span> Domain Path: /languages/
</span></span><span><span> */</span></span>
로그인 후 복사
_n 함수로 전달 된 첫 번째 인수는 주석 수가 단수 일 때 표시 될 텍스트입니다. 두 번째는 주석 수가 1보다 큰 경우 표시되는 텍스트입니다. 자리 표시기 %s에는 Number_Format_i18N (get_comments_number ())의 값이 포함됩니다. 세 번째 인수 get_comments_number ()는 주석 수를 반환하는 함수로 가정됩니다. 가 1을 반환하면 첫 번째 인수 1 개 주석이 printf에 의해 출력됩니다. 그렇지 않으면 두 번째 인수 %s 댓글이 1보다 큰 경우 반환됩니다. 참고 : 자리 표시 자 %s는 숫자 _format_i18n (get_comments_number ())로 반환 된 정수로 대체됩니다. 마지막으로, 네 번째 인수는 번역

텍스트 도메인

. 입니다 <_ _> 함수 번호_format_i18n ()은 로케일을 기반으로 주석 수를 형식으로 변환합니다. 자세한 내용은 설명서를 참조하십시오.

숫자 _format_i18n ()과 유사한 것은 타임 스탬프를 기준으로 로컬 형식으로 날짜를 검색하는 date_i18n입니다. 여전히 _n () 함수에있어서 아래는 기능의 작동 방식에 대한 또 다른 데모입니다.

변수 $ count가 1을 반환하면 하나의 스팸 메시지를 삭제 한 텍스트가 표시됩니다. 그러나 1보다 큰 경우 %d 스팸 메시지가 삭제 된 자리 표시 자 %d가 $ count의 정수 값으로 대체됩니다.

5. 문맥에 의한 명확성

때때로 한 용어는 여러 맥락에서 사용되지만 영어로는 하나이고 같은 단어이지만 다른 언어로 다르게 번역되어야합니다.

예를 들어, 단어 게시물은 "주석을 게시하려면 여기를 클릭하고"명사 "이 게시물 편집"에서와 같이 동사로 사용할 수 있습니다. 그러한 경우 _x 또는 _ex 함수를 사용해야합니다.

그것은 __ () 및 _e ()와 유사하지만 추가 인수 - $ context.

이 메소드를 사용하여 두 경우 모두 원본 버전에 대한 문자열 주석을 얻을 수 있지만 번역기는 각각 다른 컨텍스트에서 번역에 대한 두 개의 댓글 문자열을 볼 수 있습니다. _x () 함수로 번역 할 수있는 문자열이 POEDIT와 같은 번역 도구에 의해 구문 분석되면 컨텍스트 인수는 문자열/텍스트가 사용 된 컨텍스트에 대한 번역기에 힌트를 제공합니다.

. 독일어에서는 명사로서의 게시물은 비트 그램이고 동사로서 동사는 verbuchen입니다. 아래는 문자열 게시물을 제곱을 제곱 한 바로 독일어로 번역하는 POEDIT의 스크린 샷입니다.

_x () 번역 된 문자열을 검색하는 동안 _ex ()가 표시됩니다

6. 탈출 번역 문자열

WordPress는 데이터를 검증하고 소독 할 수있는 여러 기능이 있습니다. 목록 중에는 번역 텍스트를 피하기위한 함수 - esc_html (), esc_html_e (), esc_html_x (), esc_attr (), esc_attr_e () 및 esc_attr_x ()가 있습니다. WordPress Codex에서 이러한 각 함수에 대한 자세한 정보를 얻을 수 있습니다.

나는이 모든 것을 설명 할 필요는 없지만, 그들이하는 일은 기본적으로 번역 가능한 텍스트를 탈출하는 것입니다.

랩 업 WordPress의 목표 중 하나는 전 세계 사용자가 콘텐츠를 쉽게 게시 할 수 있도록하는 것입니다. 플러그인 개발자로서 플러그인을 국제화 할 때 사용자의 게시 프로세스를 더욱 쉽게 할 수 있습니다. 이 튜토리얼의 첫 번째 부분은 본질적으로 플러그인 i18n에 대해 알아야 할 모든 것에 관한 것입니다. 결론 부분은 플러그인 번역을 준비하는 방법에 대한 연습이 될뿐만 아니라 플러그인을 새로운 언어로 현지화하는 방법을 배우는 방법에 대한 연습이 될 것입니다. 이 튜토리얼에서 새로운 것을 배웠기를 바랍니다.

행복한 코딩! WordPress I18N 및 플러그인 번역에 대한 자주 묻는 질문 (FAQ) WordPress 플러그인 번역 준비의 중요성은 무엇입니까?

WordPress 플러그인 번역 준비를하는 것은 전 세계 잠재 고객에게 도달하는 데 중요합니다. 모든 WordPress 사용자가 영어 사용자가 아닙니다. 플러그인을 국제화함으로써 다른 언어를 사용하는 사용자가 액세스 할 수있게하여 사용자 기반을 늘릴 수 있습니다. 또한 사용자가 모국어로 플러그인과 상호 작용할 수 있으므로 사용자 경험을 향상시켜 사용자 친화적입니다. WordPress I18N은 어떻게 작동합니까? WordPress i18N 또는 국제화는 어떻게 작동합니까? 플러그인의 텍스트 문자열을 다른 언어로 번역 할 수 있습니다. 이 텍스트 문자열을 특수 함수로 래핑하여 번역 할 수 있습니다. WordPress는이 목적을 위해 GNU GetText 현지화 프레임 워크를 사용합니다.이 목적은 텍스트를 변환하기위한 일련의 도구를 제공합니다.

WordPress 플러그인 번역 준비를하는 단계는 무엇입니까?

WordPress 만들기 플러그인 번역 준비에는 여러 단계가 포함됩니다. 먼저 __ () 또는 _e () 함수로 모든 텍스트 문자열을 감싸서 플러그인을 국제화해야합니다. 다음으로 플러그인의 모든 번역 가능한 문자열이 포함 된 .pot (휴대용 객체 템플릿) 파일을 작성해야합니다. 이 파일은 번역 된 문자열을 포함하는 .po (portable 객체) 및 .mo (machine 객체) 파일을 작성하기위한 템플릿으로 사용됩니다. WordPress i18n?

__ () 및 _e () 함수는 텍스트 문자열을 번역 할 수 있도록 WordPress i18n에서 모두 사용됩니다. 그들 사이의 주요 차이점은 __ ()가 번역 된 문자열을 반환하는 반면 _e ()는 번역 된 문자열을 직접 반향하거나 출력한다는 것입니다. 따라서 변환 된 문자열을 변수에 저장하려면 __ ()를 사용하고 번역 된 문자열을 사용자에게 표시하려면 _e ()를 사용합니다. 내 WordPress 플러그인을 다른 언어로 변환하려면

WordPress 플러그인을 다른 언어로 변환하려면 각 언어에 대해 .po 및 .mo 파일을 만들어야합니다. 이 파일에는 번역 된 문자열이 포함되어 있으며 ISO-639 언어 코드 (예 : EN_US, 프랑스어의 FR_FR)에 따라 명명됩니다. Poedit 또는 Loco와 같은 도구를 사용하여 번역 파일을 작성하고 관리 할 수 ​​있습니다. WordPress I18N에는 어떤 도구를 사용할 수 있습니까?

WordPress I18N에 사용할 수있는 몇 가지 도구가 있습니다. Poedit 및 Loco Translate는 번역 파일을 작성하고 관리하는 데 인기있는 도구입니다. 웹 기반 번역 도구 인 Glotpress는 WordPress 커뮤니티에서 WordPress Core, 플러그인 및 테마를 번역하는 데 사용됩니다.

번역 준비를 위해 WordPress 플러그인을 어떻게 테스트 할 수 있습니까?

WordPress 설정에서 언어를 변경하고 플러그인의 텍스트 문자열이 올바르게 번역되어 있는지 확인하여 번역 준비를 위해 WordPress 플러그인을 테스트 할 수 있습니다. WordPress I18N Checker 플러그인과 같은 도구를 사용할 수 있습니다.이 도구는 일반적인 i18n 오류에 대해 플러그인을 확인합니다.

WordPress 플러그인 번역에 어떻게 기여할 수 있습니까?

WordPress 플러그인 번역에 기여할 수 있습니다. WordPress Polyglots 팀을 통해. 그들은 WordPress를 다른 언어로 국소화 할 책임이 있습니다. 팀에 합류하여 플러그인과 테마를 모국어로 번역 할 수 있습니다.

.pot, .po 및 .mo 파일의 역할은 무엇입니까? .PO 및 .MO 파일은 WordPress I18N에서 중요한 역할을합니다. .pot 파일은 플러그인의 모든 번역 가능한 문자열이 포함 된 템플릿입니다. .po 파일은 번역 된 문자열을 포함하는 사람이 읽을 수있는 파일이며 .MO 파일은 WordPress에서 번역 된 문자열을 표시하는 데 사용되는 기계로 읽을 수있는 파일입니다. Theme Translation-ready?

WordPress 테마 번역 준비를하는 것은 플러그인과 유사한 프로세스가 포함됩니다. 모든 텍스트 문자열을 __ () 또는 _e () 함수로 래핑하여 테마를 국제화해야합니다. 그런 다음 .pot 파일을 작성하고 각 언어에 대해 .po 및 .mo 파일을 작성하기위한 템플릿으로 사용해야합니다.

위 내용은 WordPress I18N : 플러그인 번역을 준비하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿