BOARD

팁·활용

그누보드 5.3 스킨을 5.4 짧은 주소(pretty URL) 환경에 맞게 수정하는 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 3회 작성일 26-10-11 17:19

본문

그누보드 5.3 스킨을 5.4 짧은 주소(pretty URL) 환경에 맞게 수정하는 방법

그누보드 5.3 버전에서 사용하던 스킨을 5.4 버전의 짧은 주소 기능이 적용된 환경으로 옮길 때, 경로 불일치 문제를 해결하고 정상적으로 작동하도록 스킨 코드를 수정하는 방법을 안내합니다.

그누보드 5.3 스킨의 5.4 짧은 주소 호환성 수정 가이드

그누보드 5.3 버전에서 사용하던 스킨을 5.4 버전의 짧은 주소 환경에서 그대로 적용하면 기능은 대략 동작하나 경로 불일치 문제가 발생할 수 있습니다. 따라서 각 스킨 파일별로 링크 경로와 스크립트를 수정해야 합니다.

1. 게시판 스킨 수정

1-1. write.skin.php 파일

취소 버튼 링크를 변경합니다.

  • 수정 전:
<a href="./board.php?bo_table=<?php echo $bo_table?>" class="btn_cancel btn">취소</a>
  • 수정 후:
<a href="<?php echo get_pretty_url($bo_table);?>" class="btn_cancel btn">취소</a>
1-2. list.skin.php 파일

form 설정에서 action 링크 및 하단 스크립트 부분을 수정합니다.

  • 수정 전 (form):
<form name="fboardlist" id="fboardlist" action="./board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
  • 수정 후 (form):
<form name="fboardlist" id="fboardlist" action="<?php echo G5_BBS_URL;?>/board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
  • 하단 스크립트 변경:
// 수정 전
f.action = "./board_list_update.php";
f.action = "./move.php";

// 수정 후
f.action = g5_bbs_url+"/board_list_update.php";
f.action = g5_bbs_url+"/move.php";

2. 최신글 스킨 수정

latest.skin.php 파일

게시판 타이틀 링크 및 더보기 링크 주소를 변경합니다.

  • 수정 전 (타이틀/더보기):
<a href="<?php echo G5_BBS_URL?>/board.php?bo_table=<?php echo $bo_table?>">
  • 수정 후 (타이틀/더보기):
<a href="<?php echo get_pretty_url($bo_table);?>">

3. 외부로그인 및 로그인 스킨 수정

3-1. outlogin.skin.1.php 파일

하단 스크립트를 수정합니다.

  • 수정 전:
function fhead_submit(f) {
 return true;
}
  • 수정 후:
function fhead_submit(f) {
 if( $( document.body ).triggerHandler( 'outlogin1', [f, 'foutlogin'] )!== false ){
 return true;
 }
 return false;
}
3-2. outlogin.skin.2.php 파일
  • 수정 전:
<a href="<?php echo G5_ADMIN_URL?>"
  • 수정 후:
<a href="<?php echo correct_goto_url(G5_ADMIN_URL);?>"
3-3. login.skin.php 파일 (skin/member/basic/ 폴더)

하단 스크립트를 수정합니다.

  • 수정 전:
function flogin_submit(f) {
 return true;
}
  • 수정 후:
function flogin_submit(f) {
 if( $( document.body ).triggerHandler( 'login_sumit', [f, 'flogin'] )!== false ){
 return true;
 }
 return false;
}

4. 새글 스킨 수정

4-1. new.skin.php 파일
  • 수정 전:
<a href="./board.php?bo_table=<?php echo $list[$i]['bo_table']?>"><?php echo $bo_subject?></a>
  • 수정 후:
<a href="<?php echo get_pretty_url($list[$i]['bo_table']);?>"><?php echo $bo_subject?></a>
4-2. bbs/new.php 파일 (별도 수정해서 사용하던 경우만 해당)
  • 수정 전:
$list[$i]['href'] = './board.php?bo_table='.$row['bo_table'].'&amp;wr_id='.$row2['wr_id'].$comment_link;
  • 수정 후:
$list[$i]['href'] = get_pretty_url($row['bo_table'], $row2['wr_id'], $comment_link);

5. 검색 스킨 수정

search.skin.php 파일 (게시판 내 결과, 검색 결과 더보기 두 군데)
  • 수정 전:
<a href="./board.php?bo_table=<?php echo $search_table[$idx]?>&amp;<?php echo $search_query?>">
  • 수정 후:
<a href="<?php echo get_pretty_url($search_table[$idx], '', $search_query);?>">

게시판 스킨(write.skin.php, list.skin.php) 짧은 주소 수정 방법

그누보드 5.3 버전에서 사용하던 게시판 스킨을 5.4 버전의 짧은 주소(pretty URL) 환경에서 정상 작동하도록 하려면, 취소 버튼의 링크와 게시판 목록 폼(form)의 action 경로를 아래와 같이 수정해야 합니다.

1. write.skin.php 파일 수정

취소 버튼의 링크 주소를 5.4 버전의 짧은 주소 규격 함수인 get_pretty_url()을 사용하도록 변경합니다.

  • 수정 전
<a href="./board.php?bo_table=<?php echo $bo_table?>" class="btn_cancel btn">취소</a>
  • 수정 후
<a href="<?php echo get_pretty_url($bo_table);?>" class="btn_cancel btn">취소</a>

2. list.skin.php 파일 수정

폼 설정의 action 링크 변경

게시판 목록을 처리하는 폼의 action 경로를 G5_BBS_URL 상수를 이용해 수정합니다.

  • 수정 전
<form name="fboardlist" id="fboardlist" action="./board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
  • 수정 후
<form name="fboardlist" id="fboardlist" action="<?php echo G5_BBS_URL;?>/board_list_update.php" onsubmit="return fboardlist_submit(this);" method="post">
하단 스크립트 부분 수정

스크립트 내에서 폼의 동작 경로를 지정하는 부분도 아래와 같이 g5_bbs_url 변수를 이용하도록 변경합니다.

  • 수정 전
f.action = "./board_list_update.php";
f.action = "./move.php";
  • 수정 후
f.action = g5_bbs_url+"/board_list_update.php";
f.action = g5_bbs_url+"/move.php";

최신글, 외부로그인, 로그인, 새글, 검색 스킨 수정 방법

그누보드 5.3 버전에서 사용하던 스킨을 5.4 버전의 짧은 주소 환경에서 원활하게 작동하도록 하려면 각 스킨 파일의 링크와 스크립트를 다음과 같이 수정해야 합니다.

1. 최신글 스킨 (latest.skin.php)

  • 게시판 타이틀 및 더보기 링크 주소 변경
    • 수정 전: <a href="<?php echo G5_BBS_URL?>/board.php?bo_table=<?php echo $bo_table?>"> 또는 <a href="<?php echo G5_BBS_URL?>/board.php?bo_table=<?php echo $bo_table?>" class="lt_more">
    • 수정 후: <a href="<?php echo get_pretty_url($bo_table);?>"> 또는 <a href="<?php echo get_pretty_url($bo_table);?>" class="lt_more">

2. 외부로그인 및 로그인 스킨

  • 외부로그인 스킨 (outlogin.skin.1.php) 하단 스크립트 수정
    • 수정 전:
    function fhead_submit(f) {
    return true;
    }
    • 수정 후:
    function fhead_submit(f) {
    if( $( document.body ).triggerHandler( 'outlogin1', [f, 'foutlogin'] )!== false ){
    return true;
    }
    return false;
    }
  • 외부로그인 스킨 (outlogin.skin.2.php) 관리자 링크 수정
    • 수정 전: <a href="<?php echo G5_ADMIN_URL?>"
    • 수정 후: <a href="<?php echo correct_goto_url(G5_ADMIN_URL);?>"
  • 로그인 스킨 (skin/member/basic/login.skin.php) 하단 스크립트 수정
    • 수정 전:
    function flogin_submit(f) {
    return true;
    }
    • 수정 후:
    function flogin_submit(f) {
    if( $( document.body ).triggerHandler( 'login_sumit', [f, 'flogin'] )!== false ){
    return true;
    }
    return false;
    }

3. 새글 스킨 (new.skin.php 및 bbs/new.php)

  • 새글 스킨 (new.skin.php) 링크 변경
    • 수정 전: <a href="./board.php?bo_table=<?php echo $list[$i]['bo_table']?>"><?php echo $bo_subject?></a>
    • 수정 후: <a href="<?php echo get_pretty_url($list[$i]['bo_table']);?>"><?php echo $bo_subject?></a>
  • 새글 파일 (bbs/new.php) 수정 (별도로 수정해 사용하던 경우만 해당)
    • 수정 전: $list[$i]['href'] = './board.php?bo_table='.$row['bo_table'].'&amp;wr_id='.$row2['wr_id'].$comment_link;
    • 수정 후: $list[$i]['href'] = get_pretty_url($row['bo_table'], $row2['wr_id'], $comment_link);

4. 검색 스킨 (search.skin.php)

  • 게시판 내 결과 및 검색 결과 더보기 링크 변경 (두 군데 모두 적용)
    • 수정 전: <a href="./board.php?bo_table=<?php echo $search_table[$idx]?>&amp;<?php echo $search_query?>">
    • 수정 후: <a href="<?php echo get_pretty_url($search_table[$idx], '', $search_query);?>">

상황별 판단 및 행동 가이드

  • 내 상황: 그누보드 5.3 버전 스킨을 5.4 버전의 짧은 주소(pretty URL) 환경에서 사용 중이며 경로 불일치 문제가 발생함
  • 선택 기준: 각 스킨 파일(write.skin.php, list.skin.php, latest.skin.php 등) 내에 기존 board.php를 직접 호출하는 경로가 포함되어 있는지 확인
  • 다음 행동: get_pretty_url() 함수 또는 G5_BBS_URL 상수를 사용하는 방식으로 해당 링크와 스크립트 경로를 수정

실전 FAQ

Q. 짧은 주소를 사용하지 않고 5.3 스킨을 5.4에 그대로 쓰면 문제가 되나요?

  • 실행 중 막히는 지점: 기능 자체는 대략 작동하나, 짧은 주소 기능이 켜진 환경에서는 일부 링크나 취소/목록 처리 경로가 어긋나 에러나 의도치 않은 이동이 발생할 수 있습니다.

Q. short_url_clean 함수를 스킨에 적용할 때 주의할 점은 무엇인가요?

  • 예외 및 대안: short_url_clean 함수는 현재 브라우저의 프로토콜, 도메인, 포트 정보가 일치해야 정상적으로 짧은주소 변환이 이루어지므로, 환경에 따라 get_pretty_url() 함수 사용이 더 수월할 수 있습니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.