LogoLogo
NHN커머스 메인고도몰 운영 도움말
  • 고도몰 튜닝 가이드
    • Intro
    • 이해하기
      • 용어
      • 구조
        • 튜닝 진행 방법
        • 튜닝 가능 범위
        • 고도몰 아키텍쳐(Architecture)
        • 코딩 규칙
        • 네이밍 규칙
    • 준비하기
      • 심화 구조 이해
        • Routing 소개
        • Controller 소개
        • HTTP 소개
        • Database 소개
        • Security 소개
        • Exception 소개
        • Language 소개
      • 오픈 API 사용가이드
        • 인증키 발급 방법 안내
        • 공급사 이용 방법 안내
    • 튜닝하기
      • 소스 코드 튜닝
        • 기본 튜닝 방법
        • 컨트롤러 튜닝 방법
        • 템플릿 튜닝 방법
        • 튜닝 시 유의사항
      • 데이터베이스 튜닝
        • 튜닝 방법
        • 튜닝 시 유의사항
        • 고도몰 테이블 명세서
        • PhpMyAdmin 이용
      • 디버깅 방법
      • 패치 확인 및 대응 방법
    • 튜닝 따라하기
      • 관리자 GNB 색상 변경하기
      • 즐겨찾기 메뉴 바로가기 만들기
      • 관리자 메뉴 추가하기
      • 관리자 메뉴 수정하기
      • 관리자 페이지 추가하기
      • 관리자 페이지 수정하기
      • 사용자 페이지 추가하기
      • 사용자 페이지 수정하기
    • 잘못된 튜닝사례
      • 상속 미준수
      • 메소드 관련
      • 그 외
  • 기타 개발 가이드
    • 로그 사용 가이드
    • [PMA] 내보내기(export) 이용 안내
    • 외부 스크립트 사용 가이드
    • SDK 사용 가이드
    • [DB] 사용 가이드
  • 튜닝가이드 영상 보기
Powered by GitBook
LogoLogo

NHN COMMERCE

  • 공지사항
  • 회사소개

Partners

  • 서비스 제휴문의
  • 셀러어드민
  • 디자인 파트너

Developers

  • 스토어

©NHN COMMERCE Corp. All rights reserved.

On this page
  • 📌 기본 Usage
  • 📌 상세 Usage
  • 기본형
  • 복수형
  • 컨텍스트형
  • 도메인형
  • 도메인 컨텍스트형
  • 도메인 컨텍스트 복수형

Was this helpful?

  1. 고도몰 튜닝 가이드
  2. 준비하기
  3. 심화 구조 이해

Language 소개

고도몰의 Language 를 소개하는 내용입니다.

  • Locale 에 따른 언어를 출력할 수 있도록 지원하며, getText방식이 적용되어 있습니다.

  • 튜닝상점의 경우 언어 설정을 별도 수정하여 사용할 수 없습니다. (추후 지원 예정)

📌 기본 Usage

고도몰 컨트롤러 및 컴포넌트에서의 기본적인 사용법은 아래와 같으며 치환코드는 1개만 넣을 수 있습니다.

__('오류가 발생하였습니다.');
__('%s 오류가 발생하였습니다.', $erroCode);

치환 문자를 사용해야 하는 경우,

sprintf(__(%s), $sample1, $sample2);

📌 상세 Usage

아래 함수는 전역함수로 어느 파일에서도 사용할 수 있습니다.

  • $original : 기본메시지를 선언합니다.

  • $plural : 기본메시지의 복수형을 선언합니다.

  • $value : 복수형 사용을 위한 조건으로 정수형 숫자를 선언합니다.

  • $context : 메시지를 포함하는 위치 정보로 동일 단어를 다르게 사용할 수 있습니다.

  • $domain : 도메인은 언어파일의 범위(영역)를 나타내며 고도몰에서는 파일 이름을 도메인으로 사용하고 있습니다.

기본형

__($original)
#: data/skin/front/food_story/main/index.html:281
msgid "테스트"
msgstr "test"
echo __('테스트');
__e('테스트');

// print
test
test

복수형

n__($original, $plural, $value)
#: data/skin/front/food_story/main/index.html:281
msgid "테스트"
msgid_plural "테스트들"
msgstr[0] "test"
msgstr[1] "tests"
echo n__('테스트', '테스트들', 1);
echo n__('테스트', '테스트들', 2);

// print
test
tests

컨텍스트형

p__($context, $original)
#: data/skin/front/food_story/main/index.html:281
msgctxt "메뉴"
msgid "테스트"
msgstr "menu test"

#: data/skin/front/food_story/main/index.html:281
msgctxt "도구"
msgid "테스트"
msgstr "tool test"
echo p__('메뉴', '테스트');
echo p__('도구', '테스트');

// print
menu test
tool test

도메인형

d__($domain, $original)
// domain1 파일
#: data/skin/front/food_story/main/index.html:281
msgid "테스트"
msgstr "domain1 test"

// domain2 파일
#: data/skin/front/food_story/main/index.html:281
msgid "테스트"
msgstr "domain2 test"
echo d__('도메인1', '테스트');
echo d__('도메인2', '테스트');

// print
domain1 test
domain2 test

도메인 컨텍스트형

dp__($domain, $context, $original)
// domain1 파일
#: data/skin/front/food_story/main/index.html:281
msgctxt "메뉴"
msgid "테스트"
msgstr "domain1 test"

// domain2 파일
#: data/skin/front/food_story/main/index.html:281
msgctxt "도구"
msgid "테스트"
msgstr "domain2 test"
echo dp__('도메인1', '메뉴', '테스트');
echo dp__('도메인1', '도구', '테스트');
echo dp__('도메인2', '메뉴', '테스트');
echo dp__('도메인2', '도구', '테스트');

// print
domain1 menu test
domain1 tool test
domain2 menu test
domain2 tool test

도메인 컨텍스트 복수형

dnp__($domain, $context, $original, $plural, $value)
// domain1 파일
#: data/skin/front/food_story/main/index.html:281
msgctxt "메뉴"
msgid "테스트"
msgid_plural "테스트들"
msgstr[0] "domain1 test"
msgstr[1] "domain1 tests"

// domain2 파일
#: data/skin/front/food_story/main/index.html:281
msgctxt "도구"
msgid "테스트"
msgid_plural "테스트들" 
msgstr[0] "domain2 test"
msgstr[1] "domain2 tests"
echo dnp__('도메인1', '메뉴', '테스트', '테스트들', 1);
echo dnp__('도메인1', '도구', '테스트', '테스트들', 2);
echo dnp__('도메인1', '메뉴', '테스트', '테스트들', 1);
echo dnp__('도메인1', '도구', '테스트', '테스트들', 2);

// print
domain1 test
domain1 tests
domain2 test
domain2 tests
PreviousException 소개Next오픈 API 사용가이드

Last updated 1 year ago

Was this helpful?