BOARD

팁·활용

그누보드 게시판 스크랩 즉시 처리 및 확인창 생략 설정 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 1회 작성일 26-10-26 16:04

본문

그누보드 게시판 스크랩 즉시 처리 및 확인창 생략 설정 방법

그누보드 게시판에서 스크랩 버튼 클릭 시 댓글 입력용 확인창(팝업)을 거치지 않고 즉시 스크랩을 완료할 수 있도록 스킨과 처리 파일을 수정하는 방법을 안내합니다.

view.skin.php 파일 수정 방법

그누보드 5.3 basic 스킨 기준으로, 게시판 본문의 스크랩 버튼을 클릭할 때 댓글 입력용 확인창을 거치지 않고 바로 스크랩 처리 주소로 연결되도록 view.skin.php 파일을 수정합니다.

1. 파일 상단에 $scrap_update 변수 추가

view.skin.php 파일 상단에 회원 여부를 확인하여 scrap_popin_update.php로 바로 연결되는 링크 변수를 설정합니다.

$scrap_update = '';
if ($is_member) {
 $scrap_update = './scrap_popin_update.php?bo_table='.$bo_table.'&wr_id='.$wr_id;
}

2. 스크랩 버튼 코드 수정

기존의 $scrap_href를 호출하는 스크랩 버튼 코드를 새로 정의한 $scrap_update 변수를 사용하도록 교체합니다.

기존 코드 예시:

<?php if ($scrap_href) {?><a href="<?php echo $scrap_href;?>" target="_blank" class="btn btn_b03" onclick="win_scrap(this.href); return false;"><i class="fa fa-thumb-tack" aria-hidden="true"></i> 스크랩</a><?php }?>

수정할 코드:

<?php if ($scrap_update) {?><a href="<?php echo $scrap_update;?>" class="btn btn_b03" onclick="win_scrap(this.href); return false;"><i class="fa fa-thumb-tack" aria-hidden="true"></i> 스크랩</a><?php }?>

참고사항: 이 방식은 완전한 무팝업(인라인 비동기) 처리 형태가 아니라, 기존 팝업 프로세스 속에서 댓글 입력 단계를 건너뛰는 방식입니다.

bbs/scrappopinupdate.php 파일 수정 및 교체 방법

그누보드 5.3 환경에서 스크랩 버튼 클릭 시 댓글 입력창을 건너뛰고 즉시 처리하도록 연동하려면 백엔드 파일인 bbs/scrap_popin_update.php 파일을 수정하거나 교체해야 합니다.

1. 백엔드 파일 수정 개요

  • 적용 버전: 그누보드 5.3
  • 처리 방식: 완전한 무팝업(인라인 비동기) 방식이 아니라, 기존 팝업 프로세스 속에서 댓글 작성 단계를 건너뛰고 스크랩 처리를 수행한 뒤 창을 닫거나 완료 상태를 반영하는 방식입니다.

2. 파일 수정 및 교체 절차

  1. bbs/scrap_popin_update.php 파일을 편집기로 엽니다.
  2. 파일 전체를 수정하거나, 강좌 자료 등에서 제공되는 그누보드 5.3 기준의 수정된 파일 내용으로 덮어씁니다.
  3. 일부 커스텀 사례에서는 파일 하단의 echo <<<HEREDOC... HEREDOC; 영역(스크랩 확인 및 이동 여부를 묻는 코드)을 주석 처리하고 아래와 같이 변경하여 처리 후 팝업창이 바로 닫히도록 구성할 수 있습니다.
/*
echo <<<HEREDOC
<script>
 if (confirm('이 글을 스크랩 하였습니다.\n\n지금 스크랩을 확인하시겠습니까?'))
 document.location.href = './scrap.php';
 else
 window.close();
</script>
<noscript><p>이 글을 스크랩 하였습니다.</p><a href="./scrap.php">스크랩 확인하기</a></noscript>
HEREDOC;
*/
?>
<script>window.close();</script>

3. 결과 확인 및 주의사항

  • view.skin.php 파일에서 링크 변수를 설정한 후 백엔드 파일을 교체하고 나면, 스크랩 버튼 클릭 시 댓글 입력 단계를 거치지 않고 백엔드 로직이 실행된 뒤 팝업이 자동으로 닫히는지 확인합니다.
  • 이 수정은 완전한 인라인 비동기 처리가 아니므로 사용자에 따라 팝업창이 잠깐 나타났다가 닫히는 과정이 포함될 수 있습니다.

제시된 수정 방법은 완전한 무팝업(인라인 비동기) 방식이 아닙니다. 이는 기존의 팝업 프로세스를 그대로 유지하되, 그 안에서 댓글 입력 단계를 건너뛰고 처리 후 자동으로 팝업창이 닫히도록 구성된 방식입니다. 따라서 스크랩 버튼을 클릭하면 여전히 팝업창이 일시적으로 나타났다가 즉시 닫히는 동작이 수행됩니다.

스크랩 즉시 처리 적용 가이드

게시판 스크랩 시 댓글 입력창을 생략하고 즉시 처리하고 싶다면, 현재 사용 중인 스킨의 view.skin.php와 백엔드 bbs/scrap_popin_update.php 파일을 수정해야 합니다.

상황별 선택 기준

  • 즉시 처리(팝업 자동 닫힘): 스크랩 버튼 클릭 시 팝업창이 열렸다가 즉시 닫히는 방식을 원한다면 아래 절차를 따릅니다.
  • 완전 무팝업(AJAX): 팝업창이 전혀 뜨지 않는 방식을 원한다면 본 수정 방식으로는 불가능하며, 별도의 비동기 스크립트 개발이 필요합니다.

적용 절차

  1. 스킨 수정: view.skin.php 상단에 $scrap_update 변수를 정의하고, 스크랩 버튼의 href 속성을 해당 변수로 교체합니다.
  2. 백엔드 수정: bbs/scrap_popin_update.php 파일 하단의 확인창 출력 코드를 주석 처리하고, <script>window.close();</script>를 추가하여 처리 후 팝업이 바로 닫히도록 변경합니다.
  3. 검증: 게시판에서 스크랩 버튼을 눌러 댓글 입력창 없이 스크랩이 완료되고 팝업이 자동으로 닫히는지 확인합니다.

Q. 수정 후에도 팝업창이 잠깐 나타났다 사라집니다.

  • 답변: 본 수정은 기존 팝업 프로세스를 활용하여 댓글 단계만 건너뛰는 방식이므로, 팝업창이 일시적으로 열렸다가 닫히는 것은 정상적인 동작입니다.

Q. 이미 스크랩한 글일 경우 어떻게 처리되나요?

  • 답변: scrap_popin_update.php 파일 내부에 기존에 작성된 alert_close() 함수가 포함되어 있다면, 이미 스크랩한 글이라는 메시지가 팝업창에 출력된 후 닫히게 됩니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.