최신글에 답변글은 불러오지 않기 > 그누3 팁자료실

그누3 팁자료실

최신글에 답변글은 불러오지 않기 정보

그누호환 최신글에 답변글은 불러오지 않기

본문

이 글은 root님의 팁을 응용해서 제가 만들었던 홈피에 적용해본 사례입니다.

latest.lib.php파일에 DB에서 불러오는 부분이 있습니다.

$sql = " select *
              from {$cfg[write_table_prefix]}{$bo_table}
              where wr_comment = 0
              order by wr_id desc limit 0, $rows ";

위 코드의 세번째 라인을 아래와 같이 고칩니다.

where wr_comment = 0 and wr_reply <> 'A'

또는 아래와 같이 고쳐도 무방합니다.

where wr_comment = 0 and wr_reply != 'A'


※ 홈페이지 전체에 적용시킬것이 아니라 특정 게시판에만 적용한다면
latest.lib.php파일의 함수부분(function second_latest.....)을 전부 복사해
developer.lib.php 파일의아랫부분( ?>의바로 위)에 붙여놓고 함수이름을 바꿉니다.
예를 들어 function second_latest.....
최근게시물을 불러오는 곳에서
<?=latest('스킨', 테이블명, 게시물수, 글자수);?> 이렇게 불러오던 것에 새로운 함수명을 씁니다.
예를 들어 <?=second_latest('스킨', 테이블명, 게시물수, 글자수);?>
추천
0
  • 복사

댓글 전체

위의 방법대로 하면 답글의 레벨이 하나일 경우만 적용되고 답글 레벨이 2 레벨 이상인 것은 최신글에 나오네요.
첨에는 where wr_comment = 0 and (wr_reply != 'A' and wr_reply != 'AA') 와 같이 해서 됐는데 답글 레벨의
갯수는 가변적이라 그것도 제대로 구현이 안되더군요.

저는 이렇게 해서 해결했는데..맞는 건지..


원래 소스 :

$sql = " select *
            from {$cfg[write_table_prefix]}{$bo_table}
              where wr_comment = 0
              order by wr_id desc limit 0, $rows ";

수정 소스 :

$sql = " select *
              from {$cfg[write_table_prefix]}{$bo_table}
              where wr_comment = 0 and wr_reply = ''
              order by wr_id desc limit 0, $rows ";
실제 사용자들이 원하는건 큰게 아닐겁니다.
소소하지만 값지고 알차게 써먹을수 있는 ....
적용도 쉽고 응용도 쉬운 .... ^^; (제 사견 입니다)

애 쓰셨습니다. 감사합니다.
© SIRSOFT
현재 페이지 제일 처음으로