웹사이트 관련 팁들을 모아놓은 곳입니다. 좋은팁 공유 합시다.
  • 웹미니 한줄 전광판 영역 입니다.
글 수 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/437/trackback
소중한 댓글 부탁드립니다.
추천수 10단위당 메달이 1개씩 노출되고, 추천수에 따라 배경색이 변하며, 일정수의 추천수를 받을시 BEST 아이콘이 붙게됩니다.
추천수에 따른 배경색 보기 본문으로 바로가기
  • 추천수 50개이상
  • 추천수 30개이상
  • 추천수 20개이상
  • 추천수 10개이상
  • 추천수 3개이상
닫기

댓글 '1'

환상 (101659)

2009.09.17 22:47:22

어렵네요.. 정말 ㅠ
List of Articles
번호 제목 글쓴이 날짜 추천 수sort 조회 수
186 best of best head 파일과 foot 파일 만드는 방법 [6] title: [ani]깜빡이는 표정빽짱구 2004-03-10 68 4124
185 best of best 홈페이지에 FTP 폼 넣기 [5] title: [ani]깜빡이는 표정빽짱구 2005-03-15 52 6238
184 best of best 서서히 변하는 롤오버 효과 [3] title: [ani]깜빡이는 표정빽짱구 2004-08-19 52 3847
183 best of best 제 community 메뉴에 쓰인 해드파일과 풋파일 [3] title: [ani]깜빡이는 표정빽짱구 2004-06-08 52 4197
182 best of best 프레임 보이고 숨기기 title: [ani]깜빡이는 표정빽짱구 2004-08-18 47 3617
181 best of best 프린트 버튼 출력하기 [1] title: [ani]깜빡이는 표정빽짱구 2004-08-19 40 3502
180 best of best HTML 테그표입니다. [2] title: [ani]깜빡이는 표정빽짱구 2004-02-17 38 3068
179 best of best 제로보드폴더 복구와 관련한.. [1] title: [ani]깜빡이는 표정빽짱구 2005-03-17 34 9485
178 best of best 제홈에 사용중인 스크롤바 색상 [1] title: [ani]깜빡이는 표정빽짱구 2004-10-13 34 3195
177 best of best 플래쉬 테두리생기는문제 코딩법 [2] title: [ani]깜빡이는 표정빽짱구 2006-04-25 33 9171
176 best of best 하이퍼링크란? (절대경로와 상대경로) title: [ani]깜빡이는 표정빽짱구 2004-10-17 33 7120
175 best of best FTP없이 자신의 계정없이 내용확인하기 [5] title: [ani]깜빡이는 표정빽짱구 2004-02-07 33 3395
174 best of best 서버이전 할경우 이미지네임관련 [4] title: [ani]깜빡이는 표정빽짱구 2005-03-19 32 6612
173 best of best 이미지 못가져가게 막기 [2] title: [ani]깜빡이는 표정빽짱구 2004-08-19 31 2928
172 best of best input 태그 (검색창안에 이미지넣기) [3] title: [ani]깜빡이는 표정빽짱구 2005-03-15 30 8678
171 best of best 플래쉬 swf 파일 투명하게하기 title: [ani]깜빡이는 표정빽짱구 2005-03-08 30 5120
170 best of best 자동광고글 차단하기 [1] title: [ani]깜빡이는 표정빽짱구 2004-08-21 30 3410
169 best of best select 폼 예쁘게 꾸며보기 [3] title: [ani]깜빡이는 표정빽짱구 2005-03-15 29 7141
168 best of best 그라데이션 셀렉박스만들기 [1] title: [ani]깜빡이는 표정빽짱구 2005-01-20 29 4761
167 best of best 태그목록 [2] title: [ani]깜빡이는 표정빽짱구 2004-02-17 29 2569