그누보드 게시판 카테코리 출력방식 방법 좀 여쭈어요.

그누보드 게시판 카테코리 출력방식 방법 좀 여쭈어요.

QA

그누보드 게시판 카테코리 출력방식 방법 좀 여쭈어요.

본문

안녕하세요, 

카테코리 설정을 통해 한 페이지에 게시물 2종류를 출력 하고 싶어서,

list.skin 페이지 하나에 게시물출력관련 소스를 추가로 복붙해서 붙여서 아래처럼 나타나게 했는데요.

 

해당 페이지에 접속을 했을때 위에 게시물은 넘버1로 출력이 되고

아래 게시물은 넘버2로 출력이 되도록 하고 싶은데.,

 

지금은 들어가면 전체로 설정되서 해당 전체게시물이 먼저 나타나는데요.

요기 카테코리를 어떻게 소스를 수정을 해야 위아래 설정한대로 카테고리가 나타나게 할까요? 

 

도움 부탁드립니다. ㅠ

 

981282474_1542676377.8061.png

이 질문에 댓글 쓰기 :

답변 2

list.skin.php 에 똑같은 소스를 붙여 넣기 하셨는데 적어 주신 내용으로 만드실려면 커스텀이 조금 많이 들어가야 합니다.

list.skin 은 bbs/list.php 에서 받은 $list 내용을 출력 하는데요 그래서 두가지 카테고리를 출력 하시려면 list.skin 수정 만으로는 위 내용을 구현하기 어렵습니다 페이징 처리 같은 부분들도 전부 커스텀을 해주셔야 해요 그렇게 난이도 높은 작업은 아니지만 초보자가 하시기에는 어려울 수 있습니다. 차라리 페이징 없이 최신글 출력에 카테고리를 설정 할 수 있도록 커스텀 하여 사용 하시는 편이 더 쉽게 처리 하실 수 있을 겁니다.

원래 소스는 잘 적어 드리지 않는데 저같은 경우는 간단 하게 이렇게

 

list.skin.php

 



function latest_category($skin_dir = "", $bo_table, $rows = 10, $subject_len = 40, $options = "", $category = "")
{

    global $g5;


    if(preg_match('#^theme/(.+)$#', $skin_dir, $match)) {
        if (G5_IS_MOBILE) {
            $latest_skin_path = G5_THEME_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];
            if(!is_dir($latest_skin_path))
                $latest_skin_path = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];
            $latest_skin_url = str_replace(G5_PATH, G5_URL, $latest_skin_path);
        } else {
            $latest_skin_path = G5_THEME_PATH.'/'.G5_SKIN_DIR.'/latest/'.$match[1];
            $latest_skin_url = str_replace(G5_PATH, G5_URL, $latest_skin_path);
        }
        $skin_dir = $match[1];
    } else {
        if(G5_IS_MOBILE) {
            $latest_skin_path = G5_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir;
            $latest_skin_url  = G5_MOBILE_URL.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir;
        } else {
            $latest_skin_path = G5_SKIN_PATH.'/latest/'.$skin_dir;
            $latest_skin_url  = G5_SKIN_URL.'/latest/'.$skin_dir;
        }
    }
    $list = array();


    $sql = " select * from $g5[board_table] where bo_table = '$bo_table'";

    $board = sql_fetch($sql);


    $tmp_write_table = $g5['write_prefix'] . $bo_table; // 게시판 테이블 전체이름

    $sql = " select * from {$tmp_write_table} where ca_name = '$category' and wr_10 = '1' order by wr_datetime desc 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;

}

 

$categories = explode('|', $board['bo_category_list']); // 구분자가 , 로 되어 있음

for ($i = 0; $i < count($categories); $i++) {
    $category = trim($categories[$i]);
    ?>
    <h2 class="case_title"><?php echo $category ?></h2>
    <div>
        <?php echo latest_category("basic", $board["bo_table"], 3, 22, "", $category); ?>
    </div>
    <?php
}

답변감사합니다, 아직 제 수준이 초보수준이라 그런지 어떻게 써먹어야할지 봐도 어려움이..
신경써주셔서 손수 소스까지 답변달아주셨는데, ㅠ
그래도 말씀 한마디 감사합니다,. !

답변을 작성하시기 전에 로그인 해주세요.
전체 123,534 | RSS
QA 내용 검색

회원로그인

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