poedit 를 사용하여 그누보드5 다국어 버전 쉽게 만들기 정보
기타 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 파일은 반드시 있어야 합니다.
위와 같이 나온다면 성공입니다.
참 쉽죠?!
-끝-
4
댓글 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" 이같은 에러가 뜨네요.
뭐가 잘못됐죠?