공지사항 쓰면 모든 게시판에서 보이게 하는 코드.. > 그누보드5 팁자료실

그누보드5 팁자료실

공지사항 쓰면 모든 게시판에서 보이게 하는 코드.. 정보

공지사항 쓰면 모든 게시판에서 보이게 하는 코드..

본문

최대한 그누보드 코드를 이해하면서 다른부분은 수정 안하면서 구현하려고 해봤습니다. 아직 미숙한지라 틀린부분이나 버그 있으면 알려주시면 감사하겠습니다.

특정 게시판(보통 공지게시판이겠지요)에 공지로 글을 작성하면 다른 모든 게시판에서도 공지가 보이도록 하는 코드입니다. bbs폴더에 list.php에서 공지처리부분 바로 위에 아래 코드를 복사붙여넣기 해주시기만 하면 됩니다.

아래코드 삽입시 예를들어 notice게시판에 공지1,2를 올리고 자유게시판에 공지3,4를 올리면 자유게시판으로 갔을때 공지1,2가 제일 위에 보이고 그 아래로 공지3,4가 보이고 그 아래로 일반글이 보이게 됩니다.


// 공지 처리(추가)
$board_notice_name='notice'; // 전체 공지를 줄 게시판명 (공지게시판을 따로 두어야함..)
$board_notice=sql_fetch(" select * from `g5_board` where `bo_table`='$board_notice_name' ");
if (!$sca && !$stx && $board['bo_table']!=$board_notice_name) {
    $arr_notice = explode(',', trim($board_notice['bo_notice']));
    $from_notice_idx = ($page - 1) * $page_rows;
    if($from_notice_idx < 0)
        $from_notice_idx = 0;
    $board_notice_count = count($arr_notice);
	$total_count+=$board_notice_count;

    for ($k=0; $k<$board_notice_count; $k++) {
        if (trim($arr_notice[$k]) == '') continue;

        $row = sql_fetch(" select * from `g5_write_".$board_notice_name."` where wr_id = '{$arr_notice[$k]}' ");

        if (!$row['wr_id']) continue;

        $notice_array[] = 0;

        if($k < $from_notice_idx) continue;

        $list[$i] = get_list($row, $board_notice, $board_skin_url, G5_IS_MOBILE ? $board['bo_mobile_subject_len'] : $board['bo_subject_len']);
        $list[$i]['is_notice'] = true;

        $i++;
        $notice_count++;

        if($notice_count >= $list_page_rows)
            break;
    }
}


// 공지 처리(원본)
if (!$sca && !$stx) {
......(후략)
추천
4

댓글 19개

일부 게시판을 제외하려면 어떨헤 수정하면 될까요?
갤러리 게시판에서는 썸네일 리스트 형식으로 나타나기 때문에... 제외하는 편이 나을 것 같네요.
위에서 4번줄에 보시면 if문 있는데 거기서 적당히 수정해주면 될것같습니다. 예를들어 갤러리 스킨을 쓰는 게시판을 제외하고싶으면 아래 처럼 수정한다든지..
if (!$sca && !$stx && $board['bo_table']!=$board_notice_name && $board['bo_skin'] != 'gallery') {
특정 게시판(보통 공지게시판이겠지요)에 공지로 글을 작성하면 다른 모든 게시판에서도 공지가 보이도록 하는 코드입니다. bbs폴더에 list.php에서 공지처리부분 바로 위에 아래 코드를 복사붙여넣기 해주시기만 하면 됩니다.

아래코드 삽입시 예를들어 notice게시판에 공지1,2를 올리고 자유게시판에 공지3,4를 올리면 자유게시판으로 갔을때 공지1,2가 제일 위에 보이고 그 아래로 공지3,4가 보이고 그 아래로 일반글이 보이게 됩니다.






// 공지 처리(추가)
$board_notice_name='notice'; // 전체 공지를 줄 게시판명 (공지게시판을 따로 두어야함..)
$board_notice=sql_fetch(" select * from `g5_board` where `bo_table`='$board_notice_name' ");
if (!$sca && !$stx && $board['bo_table']!=$board_notice_name) {
    $arr_notice = explode(',', trim($board_notice['bo_notice']));
    $from_notice_idx = ($page - 1) * $page_rows;
    if($from_notice_idx < 0)
        $from_notice_idx = 0;
    $board_notice_count = count($arr_notice);
$total_count+=$board_notice_count;

    for ($k=0; $k<$board_notice_count; $k++) {
        if (trim($arr_notice[$k]) == '') continue;

        $row = sql_fetch(" select * from `g5_write_".$board_notice_name."` where wr_id = '{$arr_notice[$k]}' ");

        if (!$row['wr_id']) continue;

        $notice_array[] = 0;

        if($k < $from_notice_idx) continue;

        $list[$i] = get_list($row, $board_notice, $board_skin_url, G5_IS_MOBILE ? $board['bo_mobile_subject_len'] : $board['bo_subject_len']);
        $list[$i]['is_notice'] = true;

        $i++;
        $notice_count++;

        if($notice_count >= $list_page_rows)
            break;
    }
}


// 공지 처리(원본)
if (!$sca && !$stx) {
......(후략)
안녕하세요 코드 잘 쓰고있습니다. 한가지 여쭤볼게 있는데요 공지사항에서 공지 체크하고 글쓰기 한 후에 게시글을 삭제하면 아래 사진과 같이 공지사항은 페이지 건수가 0이 되는데 공지사항을 제외한 다른 게시글은 다 1이 됩니다. 혹시 이걸 어떻게 수정해야하는지 알 수 있을까요?

전체 2,432 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT