테스트 사이트 - 개발 중인 베타 버전입니다

G5 다국어 홈페이지 사용하기

그누보드 G5 에서 다국어 홈페이지를 이용하는 방법입니다.
실시간 번역 방식이 아닌 별도 게시판과 컨텐츠 페이지를 이용하는 방법입니다.


조건
1. 한국어 기본 사이트가 존재하고, 영문 사이트가 필요
2. 테마사용
3. 게시판의 경우엔 영문에 사용할 게시판 추가 생성


1. g5 / index.php 을 index_en.php 로 복사후 내용 수정

<?php
include_once('./_common.php');

define('_INDEX_', true);
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

if(defined('G5_THEME_PATH')) {
require_once(G5_THEME_PATH.'/index_en.php');
return;
}

if (G5_IS_MOBILE) {
include_once(G5_MOBILE_PATH.'/index_en.php');
return;
}

include_once(G5_PATH.'/head.php');

include_once(G5_PATH.'/tail.php');
?>



2. g5 / theme / 테마명 / index.php 를 index_en.php 로 복사해서 영문페이지 제작

g5 / theme / 테마명 / img / en 폴더를 만들어서 영문용 이미지를 넣어놓으면 편리합니다.

include_once(G5_THEME_MOBILE_PATH.'/index.php'); 를
include_once(G5_THEME_MOBILE_PATH.'/index_en.php'); 로 변경

include_once(G5_THEME_PATH.'/head.php'); 를
include_once(G5_THEME_PATH.'/head_en.php'); 로 변경

include_once(G5_THEME_PATH.'/tail.php'); 를
include_once(G5_THEME_PATH.'/tail_en.php'); 로 변경

이미지 경로를 변경합니다.



3. g5 / bbs / content.php 를 content_en.php 복사후 내용 수정

include_once(G5_MOBILE_PATH.'/content.php'); 를
include_once(G5_MOBILE_PATH.'/content_en.php'); 로 변경

include_once('./_head.php'); 를
include_once(G5_THEME_PATH.'/head_en.php'); 로 변경

include_once(G5_THEME_PATH.'/tail.php'); 를
include_once(G5_THEME_PATH.'/tail_en.php'); 로 변경

include_once('./_tail.php'); 를
include_once(G5_THEME_PATH.'/tail_en.php'); 로 변경



4. g5 / mobile / content.php 를 content_en.php 복사후 내용 수정

include_once('./_head.php'); 를
include_once(G5_THEME_PATH.'/head_en.php'); 로 수정

include_once('./_tail.php'); 를
include_once(G5_THEME_PATH.'/tail_en.php'); 로 수정



5. g5 / theme / 테마명 / head.php 를 head_en.php 로 복사후 내용 수정

include_once(G5_THEME_MOBILE_PATH.'/head.php'); 를
include_once(G5_THEME_MOBILE_PATH.'/head_en.php'); 로 변경

content.php 를 content_en.php 로 변경



6. g5 / theme / 테마명 / tail.php 를 tail_en.php 로 복사후 내용 수정

include_once(G5_THEME_MOBILE_PATH.'/tail.php'); 를
include_once(G5_THEME_MOBILE_PATH.'/tail_en.php'); 로 변경

content.php 를 content_en.php 로 변경


7. g5 / theme / 테마명 / mobile / head.php 를 head_en.php 로 복사후 내용 수정

content.php 를 content_en.php 로 변경

모바일 메뉴는 g5의 환경설정에서 만든 메뉴를 사용할 수 없으므로 개별 제작이 필요합니다.
한글 모바일 메뉴에서 소스를 추출해서 메뉴부분을 head_en.php 에 적용합니다.



8. g5 / theme / 테마명 / mobile / tail.php 를 tail_en.php 로 복사후 내용 수정

content.php 를 content_en.php 로 변경

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 35개

이렇게 좋은 자료 공유 감사합니다.
좋은자료 감사합니다.
좋은자료 감사해요^^
필요했던 자료 감사합니다
궁금한게 있는데요, 게시판의 각종 명령어라던가 경고문구 같은 것도 다국어로 되는 건가요?
아뇨... 세부 alert 문구의 변경은 아닙니다.
순정 그누보드 상태를 유지하면서 다국어 형태로 사용하는 팁입니다.
아- 혹시나 제가 놓친 부분이 있나 했었어요^^ 답변 감사합니다.
영문 모바일에서는 head가 기본 국문으로만 나오게 되어있어서 적용이 안되네요 .쩝 방법이 없나요?
bbs\board_head.php 를 손대야 될 것 같은데요..잘 안되네요 ㅜㅜ
무슨 말씀인지 잘 이해가...
관리자모드에서 메인메뉴를 만드는데요. 영문은 어떻게 하나요? 관리자모드에 메뉴는 하나이고 싸이트는 두개인데 어떻게 해야할지 모르겠어요 ㅠㅠ
g5_menu 테이블에 me_name_eng 필드를 추가하고
그곳에 영어 메뉴를 추가합니다.

영어 테마의 head.php 내용중
$row['me_name'] 를 $row['me_name_eng'] 로
$row2['me_name'] 를 $row2['me_name_eng'] 로
변경하면 원하는 결과가 나올듯 하네요
답변 감사합니다!

죄송하지만 g5_menu 테이블이 어디에 있는건가요?

환경설정에 들어가서 찾아봐도 없어서요 ㅠㅠ

초보라 죄송합니다.

좋은하루 보내셔요!
g5_menu 는 디비 테이블입니다. phpMyAdmin 등의 프로그램을 이용해야합니다.
호스팅사에서 별도로 제공하는 경우가 있으니 문의해보세요
답변 감사합니다~!!!

해피정님덕분에 어떻게 여기까지 진입은 했는데요.

테이블추가를 어떻게 하는지를 모르겠어요 ㅠㅠ

카페24에서 문의해봐도 그런건 고객이 알아서 하는거라고 해서요...

방법좀 알수 있을까요?ㅠㅠ

[http://sir.kr/data/editor/1804/516ceb45572df8ab2e0d1a2be1e5eb93_1524096629_1172.PNG]

@해피정 안녕하세요. 제공해주신 팁으로 작업을 하였는데 

[me_use_eng]를 만들어서 영어메뉴중에 안쓰는 서브 메뉴는 숨기려고하는데

이게 작동이 않되서 어떻게 해보기했는데 1단계메뉴는 성공했는데 2단계 메뉴가 적용이 않되서요.. 혹시 도움을 받을수있을까요?

 

 

 <ul class="sidebar-menu">
               <?php
$use_english = true; // 이 값을 필요에 따라 설정하세요 (영문 메뉴 사용 여부)

$menu_datas = get_menu_db(0, true);

// 메뉴 데이터를 필터링하여 영문 메뉴 또는 한글 메뉴 사용 여부를 확인
$filtered_menu_datas = array_filter($menu_datas, function($row) use ($use_english) {
    if (empty($row)) return false;
    return $use_english ? $row['me_use_en'] : $row['me_use'];
     return $use_english ? $row2['me_use_en'] : $row['me_use'];
});

$gnb_zindex = 999; // gnb_1dli z-index 값 설정용
$i = 0;
foreach ($filtered_menu_datas as $row) {
    if (empty($row)) continue;
    $add_class = (isset($row['sub']) && $row['sub']) ? 'gnb_al_li_plus' : '';
?>
                <li>
                   <a href="<?php echo $use_english ? $row['me_link_en'] : $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>">
        <?php echo $use_english ? $row['me_name_en'] : $row['me_name']; ?>
    </a>
                    <?php
                        $k = 0;
                        foreach( (array) $row['sub'] as $row2 ){
                        if( empty($row2) ) continue;
                        if($k == 0)
                        echo '<ul class="sidebar-submenu">'.PHP_EOL;
                    ?>
                <li class="2bt"><a href="<?php echo $row2['me_link_en']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name_en'] ?></a></li>
                <?php
                        $k++;
                        } //end foreach $row2
                        if($k > 0)
                        echo '</ul>'.PHP_EOL;
                        ?>
                </li>
                <?php
                    $i++;
                    } //end foreach $row
                if ($i == 0) { ?>
                <li class="gnb_empty">메뉴 준비 중입니다.<?php if ($is_admin) { ?> <a href="<?php echo G5_ADMIN_URL; ?>/menu_list.php">관리자모드 &gt; 환경설정 &gt; 메뉴설정</a>에서 설정하실 수 있습니다.<?php } ?></li>
                <?php } ?>
            </ul>

좋은 정보 감사합니다.
게시판을 영문용으로 따로 만들고 head와 tail도 영문으로 보이게 하려면 어느부분을 변경해야 할까요?
자문자답이네요 ^^; bbs에 _head_en.php 와 _tail_en.php 만들어서 해결했습니다 ^^
정말 좋은 정보 입니다!!
좋은 정보 감사합니다!
좋은 자료 감사합니다.
다 완료하고 나니 홈페이지 운영을 위한 웹호스팅 서비스를 이용할 수 있습니다. 라는 페이지 가나오는데 이렇게 나오는게 맞나요?
웹호스팅사 기본 안내페이지가 열리는거 아닌가요?
국문 홈페이지와 영문 홈페이지 게시판 분리(영문 헤더, 영문 푸터)

하나의 웹호스팅에 테마를 사용하여 국문을 구축하고,
이 국문 홈페이지를 똑같이 www 아래 복사&붙여넣기하여
영문 홈페이지로 사용하려 합니다.

그런데,
영문홈페이지 게시판에서
상단(메뉴,로고) 부분과
하단(footer) 부분이
게시판 내용을 볼 때는
국문 헤더와 푸터와 노출되는
현상을 영문 헤더와 영문 푸터로 보이게 하는 방법을 모르겠습니다.

고수님,
조언을 부탁드립니다.
테마를 분리해서 운영하는 것은 너무 복잡한 코어 수정작업이 수반될듯 싶은데요...
뭔가 어려워보이지만 한번 시도해 보겠습니다 감사합니다 ^^
5.6번에 content.php가 안보이는데 혹시 어떤것을 말하신건지 알수 있을까요
head.php 내용중에 content.php 링크를 변경하라는 의미입니다.
감사합니다.
다국어 미러페이지 운영
이렇게 하면 간단하네요.. 한국어모두 만들어 둔 후에 복사해서 eng로

게시판 목록

그누보드5 팁자료실

글쓰기