게시글 점프 기능 구현 채택완료
초보라 많이 어설퍼서 질문 좀 드려봅니다. ㅠ
게시글 점프 기능이 필요해서 찾아보니 공개된 소스가 있어서 적용해 보았습니다.
베이직 기본게시판에서는 잘 구현이 되는데
현재 이윰빌더 유료테마 사용중이라 이윰빌더 베이직 게시판에 적용해 보려하니 복잡하네요. ㅠ
아래 view.skin.html 파일 중에 빨간부분을 추가하였습니다.
버튼까지는 잘보이고 클릭도 되는데 실제 점프가 구현이 안되네요. ㅠ
https://gnustudy.com/bbs/board.php?bo_table=gnu_pds&wr_id=22" rel="nofollow noreferrer noopener" target="_blank">https://gnustudy.com/bbs/board.php?bo_table=gnu_pds&wr_id=22
이 소스를 활용하여 view.tail.skin 파일 추가하여 넣고 아래 소스 넣으니 그누보드 기본 게시판에서는 잘 구현이 되고 현재 테마에서는 안되어서 문의 남겨봅니다.
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 add_stylesheet('', 0);
// 최신글로 점프 $jump_date = date('Y-m-d H:i:s', strtotime($view['wr_datetime'] . ' +1 hours')); // 점프허용 날짜(1시간 후) $jump_level = 5; // 점프허용 레벨 (5레벨 이상) $jump_point = 0; // 포인트 차감
// 점프버튼 링크 $jump_href = ''; if(($member['mb_id'] == $write['mb_id'] && $member['mb_level'] >= $jump_level) || $is_admin) { if ($is_admin) { $jump_href = G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&cmd=make_new'; $jump_css = ' jump'; } else { if ($jump_date > G5_TIME_YMDHIS) { $jump_href = "javascript:alert('점프 가능 시간({$jump_date})이 아닙니다.')"; } else if ($member['mb_point'] < $jump_point) { $jump_href = "javascript:alert('포인트가 부족합니다. (점프포인트:{$jump_point})')"; } else { $jump_href = G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&cmd=make_new'; $jump_css = ' jump'; } } } ?>
add_stylesheet('',0); add_stylesheet('',0); add_stylesheet('',0); ?>
[]
0) { ?>
-
- 첨부파일 : () - 다운로드
0) { ?>
0) { ?>
답변 3개
점프가 안되는 과정에 대해서는 해당 소스로만은 정확한 대응이 어려우며 돌아가는 과정중에 해당 부분이 제대로 반응하고 돌아가고 있는지 디버깅하며 확인해 봐야 합니다.
답변에 대한 댓글 3개
댓글을 작성하려면 로그인이 필요합니다.
해당 팁 올린 사람인데 빌더는 원래 다른 부분들이 많습니다.
저건 아주 오래전에 그누보드 원본 기준으로 작성했던 거라서 빌더는 차이가 있을 수 있습니다.
해당 빌더의 테마에 직접 설치해서 체크해봐야 판단이 가능합니다.
답변에 대한 댓글 1개
답변 주셔서 감사합니다.
댓글을 작성하려면 로그인이 필요합니다.
혹시나 해서 view.tail.skin 파일 내용은 아래와 같습니다.
// 최신글로 점프 if ($_GET['cmd'] == 'make_new') { if (!$is_admin) { // 자신의 글이 아니라면 if ($member['mb_id'] != $write['mb_id']) { alert('자신의 글만 사용할 수 있습니다.'); }
// 점프허용 레벨이 아니라면 if ($member['mb_level'] < $jump_level) { alert('권한이 없습니다.'); }
// 점프 허용 시간이 아니라면 if ($jump_date > G5_TIME_YMDHIS) { alert('점프 가능 시간이 아닙니다.'); }
// 포인트 차감 if ($member['mb_point'] < $jump_point) { alert('포인트가 부족합니다.'); } insert_point($member['mb_id'], $jump_point * (-1), "{$board['bo_subject']} {$wr_id} 점프"); }
$wr_num = get_next_num($write_table);
// 원글 최신글로 날짜도 현재시간으로 sql_fetch(" update {$write_table} set wr_num = '{$wr_num}',wr_datetime = '".G5_TIME_YMDHIS."' where wr_id = '{$view[wr_id]}' ");
// 해당 답글(댓글)도 최신글로 // sql_fetch(" update {$write_table} set wr_num = '{$wr_num}',wr_datetime = '".G5_TIME_YMDHIS."' where wr_num = '{$view[wr_num]}' ");
// 최신글 캐시 갱신 delete_cache_latest($bo_table);
// 점프 후 목록으로 이동 goto_url('./board.php?bo_table='.$bo_table); } ?>
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인