load_plugin_text 도메인이 작동하지 않습니다.
안녕하세요. 도너트 플러스(기술적으로 현지화된)라는 플러그인을 현지화하려고 합니다.
플러그인은 en_CA 및 de_DE 파일과 함께 제공되었습니다. he_를 생성해 보았습니다.IL 파일이 성공하지 못했습니다.그래서 플러그인과 함께 제공된 defiles로 시도해 보았지만 작동하지 않았습니다.
WP-config에 WPLANG을 설정했습니다.php to de_DE는 아직 코드를 바꾸지 않습니다.
설정 코드는 다음과 같습니다.
load_plugin_textdomain( 'dplus', '/wp-content/plugins/donate-plus' );
그리고 모든 문자열이 현지화로 설정되어 있는지 확인했습니다.
단서를 아는 사람?
방금 비슷한 문제가 있었는데, 파일 이름을 de_DE.po와 de_DE.mo에서 name-of-plugin-DE.mo로 바꾸셨나요? (물론 name-of-plugin-DE.po로 변경)
dplus-de_DE.mo 및 dplus-de_DE.po 작동해야 합니다 ;)
load_plugin_textdomain은 세 가지 매개 변수를 사용합니다.당신의 경우는 이와 같습니다(.po 및 .mo 파일이 'languages'라는 서브디어에 있다고 가정하면).
load_plugin_textdomain( 'dplus', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
DonatePlus Plugin의 출처를 확인해보니 Plugin이 현지화를 잘못하고 있습니다.
load_plugin_textdomain() 호출은 DonatePlus 클래스 생성기 내에서 이루어집니다.그러나 'init' 후크 안에 있어야 합니다.init 함수 안에 다음 코드(파일의 에 있음)를 추가하려고 합니다.
if( class_exists('DonatePlus') )
$donateplus = new DonatePlus();
번역 파일을 로드할 때도 비슷한 문제가 있었습니다.load_plugin_textdomain
PSR-4를 사용하는 서비스 클래스 내에서 기능합니다.이것은 그들이 그들이dirname( plugin_basename( __FILE__ ) )
string이 잘못된 경로를 반환했습니다.
- 올바른 경로는 상대 경로입니다.
your-plugin/languages
(assuming에서 번역 파일을 로드합니다./languages
디렉토리(directory. - 다음과 같은 절대 경로
/var/www/html/wp-content/plugins/my-plugin/languages
안 될 겁니다
플러그인 파일 구조는 다음과 같습니다.
- my-plugin
- assets
- languages
- services
- Api
- Base
Translation.php
- ...
Plugin.php
- vendor
- views
composer.json
composer.lock
index.php
my-plugin.php
uninstall.php
내 번역 서비스가 에 배치되어 있기 때문에/services/Base/
디렉토리, 이것은 나에게 효과가 있었습니다.
$root = plugin_basename(dirname(__FILE__, 3));
load_plugin_textdomain( 'my-plugin', false, "$root/languages/");
그리고 액션 훅을 전혀 사용하지 않았습니다.init
아니면plugins_loaded
그리고 발사했습니다.load_plugin_textdomain
플러그인의 시작 부분에서 작동합니다. 관리 메뉴와 작업 링크가 번역될 수 있을 정도로 후크가 일찍 시작되지 않기 때문입니다.
.po 및 .mo 파일은 모두 어디에 저장됩니까?/wp-content/plugins/donate-plus 폴더 자체 안에 있습니까?그렇지 않은 경우 경로를 변경하거나 파일을 이동합니다.
사용: load_textdomain( TEXT_DOMAIN, WP_PLUGIN_DIR .'/'.dirname(플러그인_basename(FILE)) . '/languages/' get_locale() .'.mo' );
언급URL : https://stackoverflow.com/questions/10235232/load-plugin-textdomain-not-working
'programing' 카테고리의 다른 글
JQuery vs ExtJS (0) | 2023.09.19 |
---|---|
단순 jQuery 선택기는 Chrome에서 첫번째 요소만 선택합니다..? (0) | 2023.09.19 |
Sticky 사이드바: 아래로 스크롤할 때는 아래로, 위로 스크롤할 때는 위로 붙습니다. (0) | 2023.09.19 |
버퍼 오버플로를 호출하려면 어떻게 해야 합니까? (0) | 2023.09.19 |
AngularJS로 멀티파트 요청 (0) | 2023.09.19 |