스킨을 공통으로 쓰면서 국문 / 영문 구분

스킨을 공통으로 쓰면서 국문 / 영문 구분

QA

스킨을 공통으로 쓰면서 국문 / 영문 구분

본문

국문 게시판은 테이블명이 aaa 이면, 영문 게시판은 en_aaa 입니다.

 

상단 파일 경로는 국문은 _head.php(default 값) 를,

                       영문은 _head_en.php 를 연결해주었으며, 하단 파일 경로도 상단과 동일하게 뒤에 _en만 붙였습니다.

 

스킨은 하나로 같이 쓰는 상태입니다. 어차피 와꾸는 같고, 문구만 갈아치우면 되는 형식이라 똑같은 스킨을 굳이 하나 더 만들 필요를 못느껴서 하나로 작업을 한건데

 

국문 먼저 완성하다보니 스킨의 문구들도 다 국문으로 되어있습니다.

 

근데 영문을 추가제작 하다보니 스킨에서는 국문인지, 영문인지 판별해서 문구를 다르게 출력시키려고 했는데, 바뀌질 않고 있습니다....;;;

 

영문 헤더 /_head_en.php 에


define('_EN_', true);

를 주고

 

국문 헤더에는 없습니다.

 

head.sub.php 에서는 잘 불러와집니다....


$lang = defined('_EN_') ? 'en', 'ko';
$config['cf_title'] = definde('_EN_') ? $config['cf_1'] : $config['cf_title'];
 
// css 부분
echo '<link rel="stylesheet" href="'.run_replace('head_css_url', '/static/css/layout'.(defined('_EN_') ? '_en' : '').(G5_IS_MOBILE?'_mobile':'').'.css?ver='.G5_LAYOUT_VER, G5_URL).'">'.PHP_EOL;

위 구문이 영문의 일반페이지(하드코딩), /index.php 에서는 잘 불러와 지는데

 

게시판에서만 말썽입니다....;;;

 

그래서 /bbs/_head_en.php 에도 /_head.php 불러오기전에 define('_EN_', true); 를 줘봤는데도

 

적용되질 않아 질문드려봅니다ㅠㅠ

 

$lang 을 찍어보면 영문 게시판에서도 ko 로 출력이 됩니다;;ㅠㅠㅠ 영문의 다른 일반 페이지에서는 en 으로 출력이 잘되는데 영문게시판 en_테이블명 에서는 적용이 안되고 있습니다.

 

영문게시판은 head.sub.php 에서도 적용이 안돼서 layout.css(국문 스타일) 을 출력하고 있습니다.

 

스킨 하나로 영/국문 제작시 어느 언어로 접속했는지 판별할 방법이 있을까요...??

 

$bo_table 앞에 en_ 가 붙었나 안붙었나로 해도 될 것 같기는 한데....

 

우선 $bo_table 로 판별해둬야겠습니다ㅠㅠㅠ 다른 방법으로 적용가능한게 있다면 알려주시면 감사하겠습니다...

이 질문에 댓글 쓰기 :

답변 1

게시판 설정의 '상단 파일 경로 : _head.php' 는

/bbs/_head.php 를 의미합니다.

/bbs/_head.php 파일의 소스를 보면, /_head.php 로 진행되기 때문에..

/_head_en.php 를 거쳐가지 않게 됩니다.

 

=>

* /bbs/_head.php 

if (strpos($bo_table, 'en_') !== false) 

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

else

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

아 관리자 > 게시판관리에서 영문게시판의 상단파일경로를 _head_en.php 로 연결해도 /bbs/_head_en.php 로 불러오는게 아니고 결국은 /bbs/_head.php 가 불러와지는건가요??

영문게시판은 상단파일경로를 _head_en.php 로 설정해놓은 상태인데 안돼서 질문드린거였습니다ㅠ

/bbs/_head_en.php 파일에는 /_head_en.php 를 불러오게 해놓았고, /_head_en.php 에는 /head_en.php 를 불러오게 해놓았습니다...

_en.php 파일들은 모두 _en 이 없는 코어파일을 그대로 복사해서 뒤에 _en만 붙여놓았습니다...

영문 게시판의 설정에서,

상단파일 경로 : _head.en.php 로 했다면

/bbs/_head_en.php 를 불러오는 것이 맞습니다.

어디서부터 예상대로 흘러가지 않게 된 것인지, 디버깅 코드로 확인해봐야 할 듯 합니다.

ex. /bbs/_head_en.php
echo 'a'; exit;
-> 브라우저에서 확인 -> ...

답변을 작성하시기 전에 로그인 해주세요.
전체 123,128 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT