poedit 를 사용하여 그누보드5 다국어 버전 쉽게 만들기
이 방법을 설명하기전에 우선 poedit 를 설치하십시오.
poedit 는 일반적인 기능에 대해서는 무료로 사용할수 있습니다.
다만, 이번에는 시간 관계상 poedit 에 대한 설명은 하지 않겠습니다.
-시작-
첨부해 드리는 g5trans.php 를 열어보시면
locale (폴더)
common.php
head.php
가 존재하는 것을 보실수 있습니다.
locale (폴더)는 번역 파일 (텍스트.po, 컴파일.mo) 이 있습니다.
common.php 는
// 언어 설정
$locale = "ko_KR";
if (isset($_GET["locale"]))
$locale = $_GET["locale"];
else if (isset($_SESSION["locale"]))
$locale = $_SESSION["locale"];
set_session('locale', $locale);
putenv("LANG={$locale}");
setlocale(LC_ALL, "$locale.UTF-8");$domain = "gnuboard5";
bindtextdomain($domain, G5_PATH.'/locale');
textdomain($domain);
이 코드가 추가 되었습니다.
head.php 는
<ul id="tnb">
<?php if ($is_member) { ?>
<?php if ($is_admin) { ?>
<li><a href="<?php echo G5_ADMIN_URL ?>"><b><?php echo _("관리자"); ?></b></a></li>
<?php } ?>
<li><a href="<?php echo G5_BBS_URL ?>/member_confirm.php?url=<?php echo G5_BBS_URL ?>/register_form.php"><?php echo _("정보수정"); ?></a></li>
<li><a href="<?php echo G5_BBS_URL ?>/logout.php"><?php echo _("로그아웃"); ?></a></li>
<?php } else { ?>
<li><a href="<?php echo G5_BBS_URL ?>/register.php"><?php echo _("회원가입"); ?></a></li>
<li><a href="<?php echo G5_BBS_URL ?>/login.php"><b><?php echo _("로그인"); ?></b></a></li>
<?php } ?>
<li><a href="<?php echo G5_BBS_URL ?>/faq.php"><?php echo _("FAQ"); ?></a></li>
<li><a href="<?php echo G5_BBS_URL ?>/qalist.php"><?php echo _("1:1문의"); ?></a></li>
<li><a href="<?php echo G5_BBS_URL ?>/current_connect.php"><?php echo _("접속자"); ?> <?php echo connect(); // 현재 접속자수, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정 ?></a></li>
<li><a href="<?php echo G5_BBS_URL ?>/new.php"><?php echo _("새글"); ?></a></li>
<li><a href="?locale=ko_KR"><?php echo _("한국어"); ?></a></li>
<li><a href="?locale=en_US"><?php echo _("영어"); ?></a></li>
<li><a href="?locale=ja_JP"><?php echo _("일어"); ?></a></li>
</ul>
이렇게 수정하시면 됩니다.
그리고 locale 폴더를 업로드 하시면 됩니다.
.po 파일은 없어도 되지만 .mo 파일은 반드시 있어야 합니다.
![]()
![]()
![]()
위와 같이 나온다면 성공입니다.
참 쉽죠?!
-끝-
댓글 10개
poedit 에서 권해주는 번역을 사용했습니다.
페이지의 내용들은 번역이 안되는데
어떻게 해야 하나요? 페이지의 내용이 번역이 되게 하고 싶은데요
"Fatal error: Uncaught Error: Call to undefined function bindtextdomain() in E:\laragon\www\g54\common.php:230 Stack trace: #0 E:\laragon\www\g54\_common.php(2): include_once() #1 E:\laragon\www\g54\index.php(2): include_once('E:\\laragon\\www\\...') #2 {main}thrown in E:\laragon\www\g54\common.php on line 230" 이같은 에러가 뜨네요.
뭐가 잘못됐죠?
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 4886 | PHP | 7년 전 | 2399 | ||
| 4885 | PHP | 7년 전 | 2711 | ||
| 4884 | 기타 | 7년 전 | 3089 | ||
| 4883 | PHP | 7년 전 | 2374 | ||
| 4882 | PHP | 7년 전 | 3712 | ||
| 4881 | PHP | 7년 전 | 3351 | ||
| 4880 | JavaScript | 7년 전 | 3349 | ||
| 4879 | JavaScript | 7년 전 | 3071 | ||
| 4878 | PHP | 7년 전 | 5462 | ||
| 4877 | PHP |
welcome
|
7년 전 | 2925 | |
| 4876 | OS | 7년 전 | 2949 | ||
| 4875 | 기타 | 7년 전 | 2399 | ||
| 4874 | PHP |
|
7년 전 | 2759 | |
| 4873 | 웹서버 |
black
|
7년 전 | 2365 | |
| 4872 | PHP |
|
7년 전 | 3582 | |
| 4871 | 기타 | 7년 전 | 3353 | ||
| 4870 | 기타 | 7년 전 | 5659 | ||
| 4869 | 기타 | 7년 전 | 4232 | ||
| 4868 | JavaScript | 7년 전 | 4587 | ||
| 4867 | PHP |
|
7년 전 | 3929 | |
| 4866 | JavaScript | 7년 전 | 4450 | ||
| 4865 | PHP | 7년 전 | 5631 | ||
| 4864 | jQuery | 7년 전 | 2598 | ||
| 4863 | jQuery |
루돌프사슴코
|
7년 전 | 3996 | |
| 4862 | JavaScript | 7년 전 | 7811 | ||
| 4861 | 기타 | 7년 전 | 2267 | ||
| 4860 | 웹서버 | 7년 전 | 2505 | ||
| 4859 | 기타 | 7년 전 | 6958 | ||
| 4858 | 기타 | 7년 전 | 5126 | ||
| 4857 | 웹서버 | 7년 전 | 6198 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기