모바일 게시판 head 질문드립니다~
본문
안녕하세요.
홈페이지를 한국어와 영어 두가지 언어로 제작 중 입니다.
그런데 모바일 게시판에서 영어버전일 때는 새롭게 만든 haed_en을 불러오게 했는데
헤드가 두개가 생깁니다.
board_head.php 소스는 다음과 같습니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 게시판 관리의 상단 내용
if (G5_IS_MOBILE) {
// 모바일의 경우 설정을 따르지 않는다.
include_once(G5_BBS_PATH.'/_head.php');
if($bo_table == 'en_o_video'){
include_once(G5_THEME_PATH.'/head_en.php');
} else if($bo_table == 'en_o_press'){
include_once(G5_THEME_PATH.'/head_en.php');
}
echo stripslashes($board['bo_mobile_content_head']);
} else {
if(is_include_path_check($board['bo_include_head'])) { //파일경로 체크
@include ($board['bo_include_head']);
} else { //파일경로가 올바르지 않으면 기본파일을 가져옴
include_once(G5_BBS_PATH.'/_head.php');
}
echo stripslashes($board['bo_content_head']);
}
?>
영어버전에서 head.php는 안나오게 하고, head_en.php만 불러오게 하려면
어떻게 해야 할까요? 답변 부탁드립니다.
답변 1
일단 언어선택을 하면 세션이라던가 쿠키라던가 만들게 하세요
보통 언어에서 한국어는 ko_KR 영문은 en_US 를 사용합니다.
기본으로 ko_KR선택 또는 한글 선택일때 세션이나 쿠키저장, 영문 선택하면 en_US가 세션이나 쿠키에 저장되게 하세요
그리고 이 세션이나 쿠키에 따라 영문 한글 변경되게 하시면 간단 합니다.
이렇게 만들어진 쿠키나 세션을 변수로 저장해서 가져오고
이를 head불러오는 부분에 넣어주면 간단하겠죠
구지 board_head 부분에 넣으실 필요없이
theme/head.php안에서
언어의 쿠키나 세션을 $lang로 저장했을때
if($lang) $ex_head = "_".$lang;
include_once(G5_THEME_PATH."/head".$ex_head.".php");
이런식으로 하시고 해당 언어에 대한 파일
head_ko_KR.php
head_en_US.php
를 추가하는 형태를 취하시면 좀 더 간단하지 않을까 싶습니다.
참고는 gnuboard.com 그누보드 다국어 버젼 다운받으셔서 어떻게 언어를 바꾸는지 보시면 됩니다.