[튜닝] 최근글 제목만 뽑아 올 경우의 튜닝 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

[튜닝] 최근글 제목만 뽑아 올 경우의 튜닝 정보

[튜닝] 최근글 제목만 뽑아 올 경우의 튜닝

본문

대략 생각이 나서 튜닝을해보았습니다만,
제가 운영하는 커뮤니티가 현재 동접 10명내외로 한산한 시즌이라서 성능 변화는 잘 못느끼겠네요.
어느 정도 테스트가 가능하신분은 피드백 남겨주시면 무척 감사하겠습니다. ^^;;

제가 운영하는 커뮤니티가 첫화면에 20개의 최근글과 통합최근글, 최근댓글을 뽑아옵니다만
최근글에 표시하는게 글 제목이랑 코멘트 수뿐이어서 아래와 같이 튜닝을 해보았습니다.

게시판 이름도 필요가 없어서 제외를 했습니다만,
게시판 이름을 사용하기 위해서 쿼리를 돌리는 대신 파일에 미리 정의를 해두고 사용을 했습니다.

<?

$board_latest["free"] = "자유게시판";

function sh_latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="")
{
global $g4, $submenu;
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
    $list = array();
    $tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
    $sql = " select wr_id, wr_subject, wr_comment, wr_option from $tmp_write_table where wr_is_comment = 0 order by wr_num limit 0, $rows ";
    $result = sql_query($sql);
    for ($i=0; $row = sql_fetch_array($result); $i++) 
        $list[$i] = get_latest($row, $bo_table, $latest_skin_path, $subject_len);
    ob_start();
$board['bo_subject'] = $board_latest[$bo_table];
    include "$latest_skin_path/latest.skin.php";
    $content = ob_get_contents();
    ob_end_clean();
    return $content;

?>

또 한 위와 같은 이유로 get_list 함수를 수정해서 get_latest 함수로 만들었습니다.

<?
function get_latest($write_row, $bo_table, $skin_path, $subject_len=40)
{
    global $g4, $config;
    // 배열전체를 복사
    $list = $write_row;
    unset($write_row);
$list['subject'] = conv_subject($list['wr_subject'], $subject_len, "-");
    $list['comment_cnt'] = "";
    if ($list['wr_comment'])
        $list['comment_cnt'] = "($list[wr_comment])";
    $list['href'] = "$g4[bbs_path]/board.php?bo_table=$bo_table&wr_id=$list[wr_id]";
$list['comment_href'] = $list['href'];
    $list['icon_secret'] = "";
    if (strstr($list['wr_option'], "secret"))
        $list['icon_secret'] = "<img src='$skin_path/img/icon_secret.gif' align='absmiddle'>";
    return $list;
}
?>

필요한 부분들은 첨가해서 쓰셔야 되겠지만 어느정도의 속도 향상은 기대할 수 있을 것 같습니다.
^^;
추천
2

댓글 2개

아 ^^ 어떻게 적용 하는 것인지 좀만더 설명 해주실수 있나요 ㅎ^^?
http://sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=95344&sca=&sfl=wr_subject||wr_content&stx=gnuwiki&sop=and
재가 pomme님 스킨 사용하고 있거든요 ^^;;
http://manlev.kr/gnu/bbs/board.php?bo_table=tr2
서브 메뉴 제일 아래의 전체 최신글에 한번 적용해 보고 싶네요^^
전체 3,309 |RSS
그누4 팁자료실 내용 검색

회원로그인

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