카테고리별 최근게시물에 대해 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

카테고리별 최근게시물에 대해 정보

카테고리별 최근게시물에 대해

본문

최근게시물 스킨에서 카테고리별로 나타나게 하는 스킨이 없는거 같아요..
카테고리별 최근게시물의 대한 팁도
팁란에도 찾아보긴 했지만 못찾겠네요 ..
 
게시판 하나만 사용하고 카테고리를 이용해 메뉴를 여러개 할려고 하는데
 
홈페이지 메인에는 최근게시물  스킨으로 각각의 카테고리 게시물을 따로 나오도록 하고 싶은데..
어찌해야 하는지.......
 
카테고리별로 뽑아오는 최근게시물 제작해주시거나
방법을 아시는분.. 가르쳐주시면 감사하겠습니다.. ^^

댓글 전체

영남이님이 소개하신 글도 훌륭한 팁입니다.
제껏도 그냥 참고하시라고^^
제가 현재 쓰고 있는 방법 그대로 올려드립니다.

우선 아래 소스를 그대로 복사해서 latest_ex.php라는 이름의 파일을 만든 후
g4/extend 폴더에 올립니다.

<? //여기부터
if (!defined('_GNUBOARD_')) exit;

// 특정 카테고리 추출
function latest_cate($skin_dir="", $bo_table, $rows=10, $subject_len=40, $ca_name) // latest_cate <-요 문구 주목
{
    global $g4;
    if ($skin_dir)
        $latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
    else
        $latest_skin_path = "$g4[path]/skin/latest/basic";
    $list = array();
    $sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
    $board = sql_fetch($sql);

    $tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
    $sql = " select * from $tmp_write_table where wr_is_comment = 0 and ca_name = '$ca_name' order by wr_id asc limit 0, $rows ";
    //explain($sql);
    $result = sql_query($sql);
    for ($i=0; $row = sql_fetch_array($result); $i++)
        $list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
   
    ob_start();
    include "$latest_skin_path/latest.skin.php";
    $content = ob_get_contents();
    ob_end_clean();

    return $content;
}  //여기까지 ?>

그 다음 최근글 부르는 구문에 카테고리 이름만 추가해서 부르면 됩니다.

<?=latest_cate("basic","freebbs",5,23,"카테고리명");?>

여기서 basic은 최근글 스킨명, freebbs는 게시판 아이디... 아시죠?
한글 카테고리 이름은 한글을 그대로 쓰시면 됩니다.

참고로 이렇게 하면 최근글 스킨파일 latest.skin.php의 링크소스에도 카테고리변수를 포함해야겠지요.
아래처럼 하면 됩니다.

echo "<a href='".$list[$i]['href']."&sca=".urlencode($list[$i]['ca_name'])."'>"; //urlencode는 utf-8일때를 위한..

그럼....^^
영남이님 답변달아주셔서 감사합니다.

그리고 지구인님 정말 감사드려요.
이것때문에 지난 주말동안 고민했는데..
그누에 대해 아직 잘 모르는데.. 스킨도 없고.. 팁에도 제가 간단히 할 수 있는 방법이 없었는데..
지구인님 덕분에 간단하게 해결이 되었네요..
포인트를 너무 적게 걸어 미안해지기까지 합니다...
정말 감사합니다. ^^*
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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