2016-10-29 1 views
1

내 플러그인에 대한 번역을 만들고 있습니다.
내-플러그인/언어 디렉토리에서 .mo 파일을 가져 오기 위해, 나는 기능을 사용할 수 있습니다 내가 ABSPATH.'/wp-content/languages' 아무튼에 위치 설정 WP - 콘텐츠/언어
에 위치를 설정하는 방법글로벌 언어 디렉토리에서 textdomain로드 [Wordpress]

//Load translation 
function load_plugin_textdomain() { 
    load_plugin_textdomain('my-plugin', FALSE, basename(dirname(__FILE__)) . '/languages/'); 
} 
add_action('plugins_loaded', 'load_plugin_textdomain'); 

일하지 마라.

답변

0

것은 다른 사람이 anwser를 위해 찾고 있다면, 여기에는 그것이 워드 프레스 기준에 위배 작동하지만

function load_txtdomain() { 
    $locale = apply_filters('plugin_locale', get_locale(), 'my-plugin'); 
    load_textdomain('my-plugin', WP_LANG_DIR . '/my-plugin-' . $locale . '.mo'); 
} 
add_action('plugins_loaded','load_txtdomain'); 
0

난 당신이 자신의 대답을 수락 알고 있어요,하지만입니다.

load_plugin_textdomain은 전역 언어 디렉토리에서 수정없이로드되며 부트 스트랩 핑 플러그인 번역에 사용해야합니다. 세 번째 인수로 지정하는 경로는 대체 언어 언어 파일이 설치되지 않은 경우 사용할 대체 경로입니다.

작동 방법을 명확히하기 : WordPress는 글로벌 언어 디렉토리에서 정확히 <WP_LANG_DIR>/plugins/my-plugin-<locale>.mo을 찾습니다. 따라서 텍스트 도메인과 로켈 코드가 올 바르면로드됩니다. 이 발견되지 않는 경우

, 워드 프레스는 wp-content/plugins 디렉토리에 상대을해야 당신이 지정한 경로에서 찾을 것입니다.

역사적으로 (WP 4.6 이전) 세 번째 인수가 먼저로드되었지만 WordPress는 작성자가 제공 한 번역 (플러그인과 함께 제공됨)에 대한 커뮤니티 번역 (전역 적으로 설치)을 선호하여 주문을 교환하기로 결정했습니다.

관련 문제