여러게시판에서 이미지 불러오는 최신글 스킨

여러게시판에서 이미지 불러오는 최신글 스킨

QA

여러게시판에서 이미지 불러오는 최신글 스킨

본문

홈페이지 메인페이지에 통합이미지 최신글을 적용하고 싶습니다.

여러개의 갤러리 게시판 메뉴를 통합해서 새 이미지가 올라올때 마다

홈페이지 메인에서 보여지게 하고 싶습니다.

 

원하는 게시판만 선택해서 갤러리 최신글 형태로 불러오는 스킨이나 

방법이 있을까요?

 

아니면 [전체검색사용] 허용으로 되어있는 전체게시판을 대상으로

불러지는 갤러리 최신글 스킨으로 적용해도 좋을 것 같습니다.

 

이 질문에 댓글 쓰기 :

답변 1

1. /extend/latest.extend.php 파일 생성


<?php
if (!defined('_GNUBOARD_')) exit;
function latest_multi($skin_dir='', $bo_tables='', $rows=10, $subject_len=40, $cache_time=1, $options='')
{
   global $g5;
   // 스킨 설정
   if (!$skin_dir) $skin_dir = 'pic_list';
   $latest_skin_path = G5_IS_MOBILE ? G5_MOBILE_PATH.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir : G5_SKIN_PATH.'/latest/'.$skin_dir;
   $latest_skin_url = G5_IS_MOBILE ? G5_MOBILE_URL.'/'.G5_SKIN_DIR.'/latest/'.$skin_dir : G5_SKIN_URL.'/latest/'.$skin_dir;
   // 게시물 추출
   $sql = " select a.*, b.* 
            from {$g5['board_new_table']} a
            left join {$g5['board_table']} b on (a.bo_table = b.bo_table)
            where find_in_set(a.bo_table, '{$bo_tables}')
              and a.wr_id = a.wr_parent
            order by a.bn_id desc ";
   $result = sql_query($sql);
   $list = array();
   $bo_subject = '';
   $bo_table = '';
   $list_count = 0;
   for ($i=0; $row=sql_fetch_array($result); $i++) {
       // 게시글 정보 가져오기
       $tmp_write_table = $g5['write_prefix'].$row['bo_table'];
       $row2 = sql_fetch(" select * from $tmp_write_table where wr_id = '{$row['wr_id']}' ");
       
       // 첨부파일이 있는 경우만 처리
       if($row2 && $row2['wr_file'] > 0) {
           $list[$list_count] = get_list($row2, $row, $latest_skin_url, $subject_len);
           $list[$list_count]['bo_subject'] = $row['bo_subject']; 
           $list[$list_count]['bo_table'] = $row['bo_table'];
           // 첫 번째 게시판 정보 저장
           if($list_count == 0) {
               $bo_subject = $row['bo_subject'];
               $bo_table = $row['bo_table'];
           }
           $list_count++;
           if($list_count == $rows) break;
       }
   }
   // 썸네일 크기
   $thumb_width = 297;
   $thumb_height = 212;
   if($options) {
       list($thumb_width, $thumb_height) = explode(',', $options);
   }
   ob_start();
   include $latest_skin_path.'/latest.skin.php';
   $content = ob_get_contents();
   ob_end_clean();
   return $content;
}

 

2. 메인페이지에서 다음과 같이 사용


echo latest_multi('pic_list', 'gallery,photo,portfolio', 8, 25, 1, '400,300');


3. pic_list 스킨 수정. ex) 게시판명은 $list[$i]['bo_subject']

네 상세한 답변 감사합니다. 혹시 extend 파일 내용을 다른 파일에 넣을수도 있을까요? extend 파일에 넣으면 전체에 적용되서 종종 충돌이 날때가 있어서요.

저렇게 함수로 호출하고, 스킨은 원하는 최신글 스킨으로 적용하면 되는거죠?

답변을 작성하시기 전에 로그인 해주세요.
전체 3

회원로그인

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