최근글에서도 그누보드 최근글(?)처럼 뽑기 정보
최근글에서도 그누보드 최근글(?)처럼 뽑기본문
쓰다보니 제목이 좀 이상하긴 한데.... 조금전 질답에 올렸다가 삼윤님의 힌트로 만들었습니다. 물론 고수님들한테는 아무것도 아니겠죠. 아무튼 검색해봐도 없는 팁 같아서 올립니다.
최근버젼의 그누보드는 목록에 '최근'이란 링크가 있어서 본문글이든 댓글이든 가장 최근에 업데이트된 글 순으로 뽑아낼 수 있죠. 최근글에서도 그렇게 할 수 있는 팁입니다.
우선 아래 소스를 g4/extend 폴더 안에 저장합니다. 파일명은 임의로 하면 되는데 전 latestLast.lib.php라고 했습니다.
<?
if (!defined('_GNUBOARD_')) exit;
// 최신글 추출
function latestUse($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="")
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
// $sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_id desc limit 0, $rows "; //원본
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_last 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;
}
?>
아시겠지만 lib/latest.lib.php를 딱 한 군데만 고쳤습니다.
// $sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_id desc limit 0, $rows "; //원본
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_last desc limit 0, $rows ";
wr_id를 wr_last로만 바꾼 거죠.
그리고 최근글을 뽑고 싶은 곳에 아래와 같이 하면 됩니다.
<?=latestLast("스킨명","게시판명",3,150)?>
혹시 중복이더라도 너무 나무라지 말기 바랍니다-_-;;;
최근버젼의 그누보드는 목록에 '최근'이란 링크가 있어서 본문글이든 댓글이든 가장 최근에 업데이트된 글 순으로 뽑아낼 수 있죠. 최근글에서도 그렇게 할 수 있는 팁입니다.
우선 아래 소스를 g4/extend 폴더 안에 저장합니다. 파일명은 임의로 하면 되는데 전 latestLast.lib.php라고 했습니다.
<?
if (!defined('_GNUBOARD_')) exit;
// 최신글 추출
function latestUse($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="")
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
// $sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_id desc limit 0, $rows "; //원본
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_last 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;
}
?>
아시겠지만 lib/latest.lib.php를 딱 한 군데만 고쳤습니다.
// $sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_id desc limit 0, $rows "; //원본
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_last desc limit 0, $rows ";
wr_id를 wr_last로만 바꾼 거죠.
그리고 최근글을 뽑고 싶은 곳에 아래와 같이 하면 됩니다.
<?=latestLast("스킨명","게시판명",3,150)?>
혹시 중복이더라도 너무 나무라지 말기 바랍니다-_-;;;
추천
0
0
댓글 2개
한군데가 아니라 두군데였군요;;;
function latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="") // 이거를....
function latestUse($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="") // 이거로...
function latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="") // 이거를....
function latestUse($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="") // 이거로...

아주 감사합니다. 잘 쓰고 잇네요 ^^