랜덤 게시글 메뉴 만들기 > 그누보드5 팁자료실

그누보드5 팁자료실

랜덤 게시글 메뉴 만들기 정보

랜덤 게시글 메뉴 만들기

본문

 

 

제가 사용중인 소스이기도 합니다만, 많은 사이트에서

 

랜덤 버튼 누르면 특정 게시판에 랜덤 게시글로 이동 되는 기능을 보셨을 껍니다.

 

이건 어디에 넣으세요...가 아니라 원하는 곳에 넣으시면 동작 잘 할 것 같습니다.

 


 
head.php 
 
원하는 곳에 다음 코드를 넣어주세요
 
<?php
 
$bo_tables = array('free', 'gallery', 'notice'); // 필요에 따라 게시판 이름 추가 및 수정 (만약 한개만 쓸거면 하나만 쓰세요)
 
// 예) $bo_tables = array('free'); <= 이렇게 사용하시면 한개만 사용 가능 그리고 ,(콤마)를 이용해 추가 가능
 
foreach($bo_tables as $bo_table_list){
    // 랜덤 게시글 ID 가져오기
    $sql = "SELECT wr_id FROM {$g5['write_prefix']}{$bo_table_list} where wr_is_comment = '0' ORDER BY RAND() LIMIT 1";
    $result = sql_fetch($sql);
    if ($result) {
        $random_posts[] = array(
            'bo_table' => $bo_table_list,
            'wr_id' => $result['wr_id']
        );
    }
}
// 랜덤으로 가져온 데이터 중 하나 선택
$random_data = $random_posts[array_rand($random_posts)];
 
// URL 구성
if($config['cf_bbs_rewrite'] === "1"){
    $random_url = "/{$random_data['bo_table']}/{$random_data['wr_id']}";
// 짧은 주소 사용일 땐 짧게 표현
}else{
    $random_url = G5_BBS_URL . "/board.php?bo_table={$random_data['bo_table']}&wr_id={$random_data['wr_id']}";
// 그게 아닌 경우는 원래 주소 형태로 표현
}
 
?>
 
<?php echo "<a href='{$random_url}'>랜덤 게시글 보기</a>"; ?>
 

 

친절(?) 하게 주석 다 달아뒀으니, 참고하시면 됩니다.

 

특히 짧은 주소 사용과 미 사용도 구분해놨으니 바로 적용 가능합니다.

 

필요에 따라 게시판을 늘리고 / 줄일 수 있으니 위에 주석 잘 읽어 보시면 됩니다.

 

사용 시 위의 움짤처럼 이용할 수 있으며, 테스트 서버에서 위 소스로 구현된 움짤은 아래와 같습니다.

 

(위 움짤 유머 게시판만 랜덤 / 아래 움짤 자유 + 공지 + 갤러리 랜덤)

 

 

 

고맙습니다.

 

추천
6

댓글 8개

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

회원로그인

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