최신글 특정 카테고리로 갖고 오기 정보
최신글 특정 카테고리로 갖고 오기
본문
최신글에 특정 게시판 특정 카테고리를 갖고 오는 방법입니다.
카테고리를 추가하되 수정을 최소화하는 방식이니 테스트 하시다가 오류가 발생하면 알려 주세요.
<?=latest("theme/basic", "qa", 5, 25)?>
이게 기본적인 최신글 함수 사용법인데요,
<?=latest("theme/basic", "qa|답변", 5, 25)?>
이런 식으로 게시판 아이디 다음에 '|특정 카테고리'를 붙여 넣습니다.
그러면 뿌리는 부분에서는 끝이 났습니다.
다음으로 /lib/latest.lib.php 파일입니다.
global g5;
이 다음 줄에
list($bo_table, $category) = explode("|", $bo_table);
if($category) $where = " AND ca_name = '".$category."' ";
이 두 줄을 추가합니다.
그런 다음에
$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} ";
이렇게 수정하시면 됩니다.
카테고리를 추가하되 수정을 최소화하는 방식이니 테스트 하시다가 오류가 발생하면 알려 주세요.
<?=latest("theme/basic", "qa", 5, 25)?>
이게 기본적인 최신글 함수 사용법인데요,
<?=latest("theme/basic", "qa|답변", 5, 25)?>
이런 식으로 게시판 아이디 다음에 '|특정 카테고리'를 붙여 넣습니다.
그러면 뿌리는 부분에서는 끝이 났습니다.
다음으로 /lib/latest.lib.php 파일입니다.
global g5;
이 다음 줄에
list($bo_table, $category) = explode("|", $bo_table);
if($category) $where = " AND ca_name = '".$category."' ";
이 두 줄을 추가합니다.
그런 다음에
$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} ";
이렇게 수정하시면 됩니다.
추천
4
4
댓글 36개

왕계란 님 짱 !!!

참고 필요
좋은팁 감사합니다. 왕계란님. 최고에요. 응용하면 특정그룹에서 가져오기도 되겠죠?
감사합니다. ㅠ.ㅠ 잘되네요.
인덱스에 카테고리를 3개 뽑고 싶은데 자유1 만 나오고있습니다.
혹시 다른카테고리도 같이 사용할수있는 방법이 없을까요? ^^;
<?=latest("theme/free_board", "fboard1|자유1", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유2", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유3", 1, 25)?>
혹시 다른카테고리도 같이 사용할수있는 방법이 없을까요? ^^;
<?=latest("theme/free_board", "fboard1|자유1", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유2", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유3", 1, 25)?>

다른 카테고리도 같이 사용한다는 게 무슨 말씀이신가요?
인덱스에서 최신글을 불러올때 이렇게 넣으면 자유1은 잘나오는데 같은페이지에
자유2와 자유3을 넣으면 자유1만 3줄로 나오고있습니다 ^^;
게시판은 1개이고 거기에 분류 3종류를 뽑아낼수있는 방법이 있는지 질문드립니다 ㅎㅎ;
<?=latest("theme/free_board", "fboard1|자유1", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유2", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유3", 1, 25)?>
자유2와 자유3을 넣으면 자유1만 3줄로 나오고있습니다 ^^;
게시판은 1개이고 거기에 분류 3종류를 뽑아낼수있는 방법이 있는지 질문드립니다 ㅎㅎ;
<?=latest("theme/free_board", "fboard1|자유1", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유2", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유3", 1, 25)?>

지금 사용하신 방법대로라면 자유1, 2, 3 전부 따로 나올 거 같습니다.
$sql~~~ 밑에 echo $sql; 해서 찍어 보세요. 뭐라고 쿼리가 찍히는지.
$sql~~~ 밑에 echo $sql; 해서 찍어 보세요. 뭐라고 쿼리가 찍히는지.
@왕계란 저도 첫번재 카테고리만 반복해서 나오는데 혹시 방법이 없나요?

@아이코스 어떤 게 하고 싶으신지 정확히 알려 주시면 답변을 하는 데에 도움이 되지 않을까 싶습니다.
@쟁반짜장
윗 분과 같은 문제입니다.
특정 카테고리 하나만 불렀을 때는 잘 되는데
같은 페이지 내에
<?=latest("theme/free_board", "fboard1|자유1", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유2", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유3", 1, 25)?>
식으로 불러오면 첫번째 불러온 카테고리만 반복해서 3번 나옵니다.
부탁드립니다.
윗 분과 같은 문제입니다.
특정 카테고리 하나만 불렀을 때는 잘 되는데
같은 페이지 내에
<?=latest("theme/free_board", "fboard1|자유1", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유2", 1, 25)?>
<?=latest("theme/free_board", "fboard1|자유3", 1, 25)?>
식으로 불러오면 첫번째 불러온 카테고리만 반복해서 3번 나옵니다.
부탁드립니다.

@아이코스 /lib/latest.lib.php 파일에 보시면
$sql = " select * from {$tmp_write_table} ~~~
이렇게 된 부분이 있습니다. 바로 밑에 echo $sql; 이렇게 했을 때 값이 어떻게 나오는지 알려 주세요.
$sql = " select * from {$tmp_write_table} ~~~
이렇게 된 부분이 있습니다. 바로 밑에 echo $sql; 이렇게 했을 때 값이 어떻게 나오는지 알려 주세요.
계란님 정말 죄송한데, 직업이 퍼블리셔이다보니 php 언어 활용 지식이 많이 낮습니다.
$sql 에 사용되는 예제나 힌트좀 얻을수있을까요 ^^; 불편드려죄송합니다.
$sql 에 사용되는 예제나 힌트좀 얻을수있을까요 ^^; 불편드려죄송합니다.

$sql에 사용되는 예제나 힌트라는 게 뭘 말씀하시는 건지 모르겠습니다.
질문이 너무 추상적이라 답변을 할 수가 없네요. 허허허
제가 남긴 답변 때문이라면 /lib/latest.lib.php 이 파일에 있는 $sql이라는 변수 다음에 저걸 찍어 보라는 의미였습니다.
질문이 너무 추상적이라 답변을 할 수가 없네요. 허허허
제가 남긴 답변 때문이라면 /lib/latest.lib.php 이 파일에 있는 $sql이라는 변수 다음에 저걸 찍어 보라는 의미였습니다.
해당 부분은 그누보드4스킨으로 변경하여 적용했습니다.
왕계란님 귀한시간내주시고 봐주셔서 정말감사드립니다 ^^
왕계란님 귀한시간내주시고 봐주셔서 정말감사드립니다 ^^
Warning: fopen(C:/APM_Setup/htdocs/g5/data/cache/latest-1-공지-basic-5-25.php) [function.fopen]: failed to open stream: Invalid argument in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 85
Warning: fwrite(): supplied argument is not a valid stream resource in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 87
Warning: fclose(): supplied argument is not a valid stream resource in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 88
Warning: include(G5_THEME_PATH/skin/latest/basic/latest.skin.php) [function.include]: failed to open stream: No such file or directory in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 93
Warning: include() [function.include]: Failed opening 'G5_THEME_PATH/skin/latest/basic/latest.skin.php' for inclusion (include_path='.') in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 93
Warning: fwrite(): supplied argument is not a valid stream resource in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 87
Warning: fclose(): supplied argument is not a valid stream resource in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 88
Warning: include(G5_THEME_PATH/skin/latest/basic/latest.skin.php) [function.include]: failed to open stream: No such file or directory in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 93
Warning: include() [function.include]: Failed opening 'G5_THEME_PATH/skin/latest/basic/latest.skin.php' for inclusion (include_path='.') in C:\APM_Setup\htdocs\g5\lib\latest.lib.php on line 93
감사합니다
안녕하세요. attm.kr에 적용했는데...무반응입니다. 이유가 뭘까요...
그누보드 5.3.x.x 에서 적용해보신분 계세요? 왜 전 안될까요?

설명대로 수정했는데
에러도 없고 반응도 없네요.. 어디가 문제일까요? -_-;;
에러도 없고 반응도 없네요.. 어디가 문제일까요? -_-;;


/config.php 파일을 열어서
define('G5_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
라고 되어 있다면 저 부분을 false로 바꿔서 해 보세요.
define('G5_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
라고 되어 있다면 저 부분을 false로 바꿔서 해 보세요.

그렇게 했더니
게시물이 없습니다. 로 나오네요 ;;
게시물이 없습니다. 로 나오네요 ;;


latest.lib.php 파일에서
$sql = " select * from {$tmp_write_table} where wr_is_comment = 0".$where." order by wr_num limit 0, {$rows} ";
echo $sql;
이렇게 하면 메인에 쿼리가 우째 나오는지 알려 주세요.
$sql = " select * from {$tmp_write_table} where wr_is_comment = 0".$where." order by wr_num limit 0, {$rows} ";
echo $sql;
이렇게 하면 메인에 쿼리가 우째 나오는지 알려 주세요.

select * from g5_write_product_0101 where wr_is_comment = 0 AND ca_name = '메인+보관함' order by wr_num limit 0, 12
이렇게 나오는데요
이렇게 나오는데요

http://exam.dothome.co.kr/
특수문자가 들어가서 안 되나 싶어 테스트를 했더니 잘 됩니다.
특수문자가 들어가서 안 되나 싶어 테스트를 했더니 잘 됩니다.
감사합니다^^
5.3인데 위에 말씀해주신 방법대로 하니까 잘되네요!! 정말감사합니다 :-)
잘됩니다!ㅎㅎ 감사합니다 ^^
select * from g5_write_notice where wr_is_comment = 0 order by wr_num limit 0, 6
select * from g5_write_Performed_business where wr_is_comment = 0 AND ca_name = '기업지원' order by wr_num limit 0, 9
이런식으로 나옵니다.
select * from g5_write_Performed_business where wr_is_comment = 0 AND ca_name = '기업지원' order by wr_num limit 0, 9
이런식으로 나옵니다.

@아이코스
<?=latest("theme/free_board", "fboard1|기업지원", 1, 25)?>
이렇게 하신 건가요?
<?=latest('pic_list', 'free|aaa', 2, 23)?>
<?=latest('pic_list', 'free|bb', 2, 23)?>
저는 이렇게 하니 잘 나옵니다.
http://exam.dothome.co.kr/
<?=latest("theme/free_board", "fboard1|기업지원", 1, 25)?>
이렇게 하신 건가요?
<?=latest('pic_list', 'free|aaa', 2, 23)?>
<?=latest('pic_list', 'free|bb', 2, 23)?>
저는 이렇게 하니 잘 나옵니다.
http://exam.dothome.co.kr/
@쟁반짜장 감사합니다.
/config.php 파일을 열어서
define('G5_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
라고 되어 있다면 저 부분을 false로 바꿔서 해 보세요.
<<< 이렇게 하니 됩니다.
/config.php 파일을 열어서
define('G5_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
라고 되어 있다면 저 부분을 false로 바꿔서 해 보세요.
<<< 이렇게 하니 됩니다.
감사합니다ㅠ 잘나와요!
감사합니다 왕게란님
감사합니다 덕분에 도움얻었습니다~~!!!

감사합니다. 예쁘게 잘 출력됩니다.
감사합니다. 혹시 타이틀도 카테고리명 나오게 하려면 어떻게 해야하는지 알려주실 수 있을까요? 게시판명이 나와서요.