테마 텍스트 도메인이란 무엇입니까?


19

나는 어떤 WordPress 테마 가이 기능을 사용한다는 것을 알았지 만,이 경우 그 목적이 무엇인지, 그것이 무엇인지 이해하지 못 'themify'합니까? Themify의 몇 가지 예는 다음과 같습니다 functions.php.

1).

load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );

2).

if (function_exists('register_nav_menus')) {
        register_nav_menus( array(
            'main-nav' => __( 'Main Navigation', 'themify' ),
            'footer-nav' => __( 'Footer Navigation', 'themify' ),
        ) );
    }

그리고 임시 파일에서 :

삼). <?php _e( 'Sorry, nothing found.', 'themify' ); ?>

그리고 더 많은! 내 의심은 무엇의 'themify'약자인가? 그들의 목적은 무엇입니까? 변경하거나 삭제할 수 있습니까? 에 대한 장소 'themify'는 어디입니까?

답변:


23

이 경우 테마를 'themify'정의 할 수있는 텍스트 도메인 으로 테마를 번역 할 수 있습니다. (코덱스 참조 :) load_theme_textdomain().

테마 번역을 준비하려면 몇 가지 단계가 필요합니다.

  1. 테마의 textdomain을 정의하십시오 .

    load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );
  2. 템플릿에서 번역 가능한 문자열 을 정의하십시오 .

    __()( 반환 된 문자열의 경우), _e()( 반향 된 문자열의 경우) 및 _x()/ _ex()( gettext 컨텍스트 문자열의 경우) 와 같은 몇 가지 변환 함수 중 하나를 사용하여 수행됩니다 . 다른 사람들도 있지만 아이디어는 ...

    와 같은 정적 텍스트 문자열은와 같은 <p>Hello world!</p>적절한 번역 함수에 래핑되어 번역에 <p><?php _e( 'Hello World!', 'themify' ); ?></p>사용할 수 있습니다.

  3. 언어 파일 을 편집하는 방법에 대한 .mo / .po 파일 참조 생성


@SokVanrithy, 파일 처리 방법은 이 Q & A 를 참조하십시오 .mo/.po. (칩, 다른 권장 사항이있을 수 있으므로 답변에 링크를 추가하지 않았습니다.)
brasofilo

1
@brasofilo 원하는 경우 언제든지 추가하십시오. 나는 그것이 질문에 대한 범위를 벗어 났지만 여전히 유용한 정보라고 생각합니다.
Chip Bennett

왜 바꾸시겠습니까? 테마를 포크하고 있습니까?
칩 베넷

예, 제거하고 싶습니다. Webdesigndepot에서 테마를 다운로드했으며을 호출합니다 base theme. 저자에게 원래 코드를 변경할 수 있는지 물었습니다. 사용자 정의 테마의 구조를 원하는 기본 공백 테마이기 때문에 허용됩니다. 또한, 그것은 작가에게 선물로 독자에게 제공합니다. 내 의심은 위와 같습니다!
Sok Vanrithy

1
물론, 당신 은 그들을 제거 할 있습니다; 하지만 그냥 떠나는 것만 아프지 않습니다 . textdomain갈래의 테마를 참조하기 위해를 다른 문자열로 변경할 수도 있습니다 . 개발 모범 사례 내가 권합니다 있도록 테마 번역하기 포함 에 대해 완전히 그들을 제거. 당신이 선택한다면 , 당신은 확실히 할 수 있습니다 .
칩 베넷
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.