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

랜덤 게시글 메뉴 만들기

· 1년 전 · 4613 · 9

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개

1년 전

좋아요. 감사 합니다.

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

감사합니다 ^^

감사합니다.

감사합니다

감사합니다.

1년 전

감사합니다

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

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

게시글 목록

번호 제목
22349
22347
22312
22308
22303
22282
22269
22259
22253
22234
22221
22197
22191
22179
22151
22144
22135
22130
22118
22110
22098
22095
22076
22057
22053
22051
22050
22046
22044
22042