게시판 2단분류 적용한 최신글 2단분류 특정 게시물 출력 질문입니다.
본문
안녕하세요.
'슈와이'님의 게시판 2단분류 적용한 상태입니다.
그리고 '왕계란'님의 최신글 특정 카테고리로 출력하기도 적용하였구요~
최신글 특정 카테고리 출력 시 위 '슈와이'님의 게시판 2단분류에서 적용한 2단분류 특정 카테고리를 최신글로 출력할 수 있는 팁이나 소스, 방법이 있을까요??
예를 들어 1단분류가 '지역' 입니다. 그리고 1단분류에서 선택가능한 2단분류가 '서울'이라고 칩니다.
최신게시물에서 2단분류의 '서울'의 게시물만 출력할 수 있을까요?
'왕계란'님의 팁에서는 1단분류의 특정 카테고리만 출력할 수 있어서요 ㅠㅠ
방법 아시는분 도와주세요~
감사합니다!!
답변 3
일단 적용하신 왕계란님의 소스를 보면
<?=latest("theme/basic", "qa", 5, 25)?>
이게 기본적인 최신글 함수 사용법인데요,
<?=latest("theme/basic", "qa|지역|서을", 5, 25)?>
이렇게 보드명,1차카데고리,2차카테고리를 적습니다.
다음으로 /lib/latest.lib.php 파일입니다.
global g5;
이 다음 줄에
list($bo_table, $category,$sub_ca) = explode("|", $bo_table);
if($category) $where = " AND ca_name = '".$category."' ";
if($sub_ca) $where .= " and wr_1 = '".$sub_ca."' "; // 이 줄을 추가 합니다.
그런 다음에
$sql = " select * from {$tmp_write_table} where wr_is_comment = 0 order by wr_num limit 0, {$rows} ";
이 줄을 찾으신 후에
$sql = " select * from {$tmp_write_table} where wr_is_comment = 0".$where." order by wr_num limit 0, {$rows} ";
이렇게 수정하시면 됩니다.
/lib/latest.lib.php 파일에 출력하는 부분을 아래와 같이 수정해주면 됩니다.
list($bo_table, $category) = explode("|", $bo_table);
if($category) $where = " AND wr_1 = '".$category."' ";
혹시 저와 같은 고민이시라면 위 두분들 답변 모두 동작 잘됩니다.
단 config.php 파일에서
define('G5_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
이것을 false로 변경하여 캐쉬를 사용하지않음으로해야 제대로 동작됩니다.