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

본문
그누보드 게시판에서 스크랩 버튼 클릭 시 댓글 입력용 확인창(팝업)을 거치지 않고 즉시 스크랩을 완료할 수 있도록 스킨과 처리 파일을 수정하는 방법을 안내합니다.
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. 파일 수정 및 교체 절차
bbs/scrap_popin_update.php파일을 편집기로 엽니다.- 파일 전체를 수정하거나, 강좌 자료 등에서 제공되는 그누보드 5.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): 팝업창이 전혀 뜨지 않는 방식을 원한다면 본 수정 방식으로는 불가능하며, 별도의 비동기 스크립트 개발이 필요합니다.
적용 절차
- 스킨 수정:
view.skin.php상단에$scrap_update변수를 정의하고, 스크랩 버튼의href속성을 해당 변수로 교체합니다. - 백엔드 수정:
bbs/scrap_popin_update.php파일 하단의 확인창 출력 코드를 주석 처리하고,<script>window.close();</script>를 추가하여 처리 후 팝업이 바로 닫히도록 변경합니다. - 검증: 게시판에서 스크랩 버튼을 눌러 댓글 입력창 없이 스크랩이 완료되고 팝업이 자동으로 닫히는지 확인합니다.
Q. 수정 후에도 팝업창이 잠깐 나타났다 사라집니다.
- 답변: 본 수정은 기존 팝업 프로세스를 활용하여 댓글 단계만 건너뛰는 방식이므로, 팝업창이 일시적으로 열렸다가 닫히는 것은 정상적인 동작입니다.
Q. 이미 스크랩한 글일 경우 어떻게 처리되나요?
- 답변:
scrap_popin_update.php파일 내부에 기존에 작성된alert_close()함수가 포함되어 있다면, 이미 스크랩한 글이라는 메시지가 팝업창에 출력된 후 닫히게 됩니다.
함께 보면 좋은 글
참고자료
기타 참고자료
- 이전글그누보드 게시판 목록(list.skin.php)에 글쓴이 IP 출력 및 마스킹 처리 방법 26.10.26
- 다음글그누보드 쪽지 읽기 페이지 삭제 버튼 추가 방법 26.10.26
댓글목록
등록된 댓글이 없습니다.