웹사이트 관련 팁들을 모아놓은 곳입니다. 좋은팁 공유 합시다.
  • 웹미니 한줄 전광판 영역 입니다.
글 수 186

13

조회 수 : 4789 신고 : 0

profile
작성자 : title: [ani]깜빡이는 표정빽짱구
포인트 : 56933 | 레벨 : 25
○ 보통 웹폰트를 사용하는 홈페이지에서 한문을 사용시에 <font style=font-family:돋움>金炳允</font> 이렇게 스타일 시트를 지정하죠.
    그렇지 안으면 글씨가 제대로 출력되지 않고 ㅁㅁㅁㅁ 이런식으로 깨져서 나옵니다.
    이걸 위처럼 스타일 시트를 사용하지 안고 그냥 金炳允만 입력시 자동으로 스타일시트를 부쳐주는 소스입니다.


○ 제로보드에서의 적용방법

4.1버젼 또는 4.1pl2에서 적용하는 방법입니다. 다른 버젼에서는 위치가 다를것이니 주의해 주십시요.
제로보드에 보시면, include 디렉토리가 있고, 그 안에 list_check.php 파일이 있습니다.

list_check.php 의 아래 부분을 찾습니다. 3~4번째 라인에 있죠.

if($_list_check_included) return;
$_list_check_included = true;

위 부분 아래 줄에 아래의 한자 변환 함수를 삽입합니다.

/****************************************************************************************
* 한자변환함수  
***************************************************************************************/

if (!function_exists("on_change_hanja")) {
function on_change_hanja($src)
{
$strlen = strlen($src);
$change = "";
$check = 0;
for($i=0;$i<$strlen;$i++)
{
$code = ord($src[$i]);
if($code > 0xC9 $code < 0xFE) //한자
{
if(!$check) {$check=1; $change.="<font face=돋움>"; }
$change.=$src[$i]; $i++; $change.=$src[$i];
continue;
}
else if($check) {$check =0; $change.="</font>";}
if($code < 0xA1) $change.=$src[$i];
else {$change.=$src[$i]; $i++; $change.=$src[$i];}
}
return $change;
}
}
/****************************************************************************************/

그리고, 아래 부분을 찾습니다. 바로 아래에 있죠.

/*********************************************************************************************
* 넘겨지는 데이타에 대한 일괄 정리
********************************************************************************************/

function list_check(&$data,$view_check=0) {
global  $keyword, $sn, $ss, $sc, $setup, $member, $href, $id, $dir, $category_data, $is_admin, $_zbResizeCheck,
$name,$email,$subject, $sort, $prev_no, $no,$homepage, $memo, $hit, $vote, $ip, $comment_num, $sitelink1, $sitelink2,
$file_name1, $file_name2, $file_download1, $file_download2, $file_size1, $file_size2,
$upload_image1, $upload_image2, $category_name, $date, $reg_date, $insert, $icon, $face_image,$number,$loop_number,
$a_file_link1, $a_file_link2, $a_reply, $a_delete, $a_modify, $zbLayer,  $_zbCheckNum,
$_listCheckTime;

$_listCheckTimeStart = getmicrotime();
if($view_check) $setup[only_board]=0;

여기에서...
$_listCheckTimeStart = getmicrotime(); 과 if($view_check) $setup[only_board]=0; 사이에 아래 소스를 넣으세요.

$data[subject] = on_change_hanja($data[subject]); //제목한자변환
$data[memo] = on_change_hanja($data[memo]); //내용한자변환

그럼 이렇게 되겠죠.

$_listCheckTimeStart = getmicrotime();
$data[subject] = on_change_hanja($data[subject]); //제목한자변환
$data[memo] = on_change_hanja($data[memo]); //내용한자변환
if($view_check) $setup[only_board]=0;

이 아랫부분의 내용은 수정하지 않아도 됩니다.




○ 제로보드에서 코멘트에 한자(한문) 적용하기

제로보드 루트에 있는 view.php 수정전 원본소스를 기본으로 하여 289번 ~ 291번 라인 소스입니다.

$_skinTimeStart = getmicrotime();
include $dir."/view_comment.php";
$_skinTime += getmicrotime()-$_skinTimeStart;

위의 소스 바로 윗줄에 즉, 288번째 라인에 아래와 같이 소스를 추가해 주시면 됩니다.

$comment_name=on_change_hanja($comment_name);
$c_memo=on_change_hanja($c_memo);

이렇게 하시면 코멘트의 내용에 한자가 있어도 정상적인 한자로 보여집니다.




○ 제로보드 최근게시물에 한자(한문)사용하기

먼저, 제로보드 루트에 있는 outlogin.php 파일을 열어서 제일 윗부분에 아래의 함수를 추가합니다.

<?
if (!function_exists("on_change_hanja")) {
function on_change_hanja($src)
{
$strlen = strlen($src);
$change = "";
$check = 0;
for($i=0;$i<$strlen;$i++)
{
$code = ord($src[$i]);
if($code > 0xC9 $code < 0xFE) //한자
{
if(!$check) {$check=1; $change.="<font face=돋움>"; }
$change.=$src[$i]; $i++; $change.=$src[$i];
continue;
}
else if($check) {$check =0; $change.="</font>";}
if($code < 0xA1) $change.=$src[$i];
else {$change.=$src[$i]; $i++; $change.=$src[$i];}
}
return $change;
}
}
?>

위 함수를 추가하기 전 원본소스를 기본으로 하여

210번째 라인 : $memo = stripslashes($data[memo]);

바로 밑에 아래 소스를 추가하세요.

$memo = on_change_hanja($memo);

232번째 라인 : $subject = cut_str(stripslashes($data[subject]),$textlen)."</font></b>";

바로 밑에 아래 소스를 추가하세요.

$subject = on_change_hanja($subject );

위와 같이 수정하시면 최근게시물에서 정상적으로 한자사용이 가능합니다.


위는 기본적인 파일을 수정했구요.
나머지 회원정보파일, 쪽지보내기, 현재접속자등....
자체파일과 플러그인등도 이와 같이 수정하시면 됨니다.
나머지는 알아서 하세요. 모든 파일에 적용하기엔 수정할 파일이 너무 만아서...-_-;


출처 : http://pia.cc/ - 폰트피아
profile 글쓴이 빽짱구

단점이 없는 사람은 장점도 거의 없다 - 에이브러햄 링컨

엮인글 :
https://web.webmini.net/webtip/14061/da0/trackback
소중한 댓글 부탁드립니다.
추천수 10단위당 메달이 1개씩 노출되고, 추천수에 따라 배경색이 변하며, 일정수의 추천수를 받을시 BEST 아이콘이 붙게됩니다.
추천수에 따른 배경색 보기 본문으로 바로가기
  • 추천수 50개이상
  • 추천수 30개이상
  • 추천수 20개이상
  • 추천수 10개이상
  • 추천수 3개이상
닫기

댓글 '1'

환상 (101659)

2009.09.17 22:47:22

어렵네요.. 정말 ㅠ
List of Articles
번호 제목 글쓴이 날짜 추천 수 조회 수
126 best of best 그라데이션 셀렉박스만들기 [1] title: [ani]깜빡이는 표정빽짱구 2005-01-20 29 4761
125 best of best 제홈 메인테이블 소스 [9] title: [ani]깜빡이는 표정빽짱구 2005-01-06 28 6122
124 홈페이지 마우스 커서 (오버시) 바꾸기 [2] title: [ani]깜빡이는 표정빽짱구 2004-10-30 12 6880
123 웹폰트 사용하는 홈 한자(한문) 자동 변환 소스 [1] title: [ani]깜빡이는 표정빽짱구 2004-10-25 13 4789
122 알고싶은 년도의 달력 미리보기 file [2] 맑은숲 2004-10-21 10 3223
121 방문객의 해상도를 자신의 홈에 맞게 바꾸기 [1] title: [ani]깜빡이는 표정빽짱구 2004-10-18 12 2889
120 best of best 하이퍼링크란? (절대경로와 상대경로) title: [ani]깜빡이는 표정빽짱구 2004-10-17 33 7120
119 best of best 제홈에 사용중인 스크롤바 색상 [1] title: [ani]깜빡이는 표정빽짱구 2004-10-13 34 3195
118 도메인 주소를 고정한 페이지를 새로고침해도 처음으로 돌아가는것을 방지 [1] title: [ani]깜빡이는 표정빽짱구 2004-10-12 18 3502
117 플래쉬로 검색창 만들기 title: [ani]깜빡이는 표정빽짱구 2004-09-10 11 4658
116 인터넷 서핑속도 올는방법 (펌) [1] Spona 2004-09-02 19 2709
115 best of best 자동광고글 차단하기 [1] title: [ani]깜빡이는 표정빽짱구 2004-08-21 30 3410
114 자동으로 새로고침하기 title: [ani]깜빡이는 표정빽짱구 2004-08-21 12 4629
113 best of best 서서히 변하는 롤오버 효과 [3] title: [ani]깜빡이는 표정빽짱구 2004-08-19 52 3847
112 best of best 프린트 버튼 출력하기 [1] title: [ani]깜빡이는 표정빽짱구 2004-08-19 40 3502
111 best of best 창닫기 버튼 title: [ani]깜빡이는 표정빽짱구 2004-08-19 28 6188
110 best of best copyright 자동으로 날짜 업데이트 title: [ani]깜빡이는 표정빽짱구 2004-08-19 27 2668
109 best of best 이미지 못가져가게 막기 [2] title: [ani]깜빡이는 표정빽짱구 2004-08-19 31 2928
108 페이지확장 시키기 title: [ani]깜빡이는 표정빽짱구 2004-08-18 11 2340
107 best of best 프레임 보이고 숨기기 title: [ani]깜빡이는 표정빽짱구 2004-08-18 47 3617