테스트 사이트 - 개발 중인 베타 버전입니다

랜덤 게시글 메뉴 만들기

978180634_1716513256.856.gif

 

 

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

 

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

 

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

 

[code]

 

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>"; ?>

 

[/code]

 

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

 

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

 

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

 

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

 

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

 

978180634_1716513431.0915.gif

 

 

고맙습니다.

 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 9개

좋아요. 감사 합니다.

오좋네요^^ 감사합니다. 스크랩해갑니다.~

감사합니다 ^^

필요한 기능이었는데, 감사히 잘 쓰고 있습니다. 너무 감사합니다.~

감사합니다!!! 찾고 있었어요!!

게시판 목록

그누보드5 팁자료실

글쓰기
🐛 버그신고