z

검색 스킨(search.skin.php)에 내용관리 검색 붙이기

그누보드 검색 기능은 게시판과 게시물 검색에는 막강하지만, 내용관리(관리자>게시판관리>내용관리)에 입력된 콘텐츠에 대해서는 기능 제공을 안하고 있는데요.
찾아봐도 관련 기능을 찾을 수도 없고… 실력 있으신 분들은 제대로 된 개발을 하시겠지만, 저는 그냥 간단하게 사용할 정도의 기능만 필요해서 구현해봤습니다. 그누보드 코어는 건드리지 않았어요.

mysql쿼리에 대한 초보적인 지식으로 g5_content 테이블의 co_content, co_subject 필드를 검색어와 대조하는 정도로만 구현했습니다. 검색 페이지 중 1페이지 상단에만 출력되게 했어요. (쿼리문 개선이라던가 소스 수정에 대한 아이디어가 있으시면 알려주세요. 잘 배우겠습니다.)

사용중이신 검색 스킨이 그누보드 기본 스킨이라면 skin/search/basic/search.skin.php 의 64번째 줄 정도에 있는 <div id="sch_result"> 밑으로 아래의 소스를 추가하시면 됩니다.


<?php // 내용관리 검색 기능 시작
if (number_format($page) == 1) { // 첫번째 검색 페이지에서만 노출
echo '<section class="sch_res_list">';
$sql = "SELECT * FROM g5_content WHERE (co_content LIKE '%$stx%' OR co_subject LIKE '%$stx%')";
$re = sql_query($sql);
$i = 0;
while ($result = sql_fetch_array($re)) {
$co_href = G5_BBS_URL.'/content.php?co_id='.$result['co_id'];
print '<h2><a href="'.$co_href.'">'.$result['co_subject'].' </a>페이지내 결과</h2>';
print '<ul><li><a href="'.$co_href.'">'.$result['co_subject'].'</a><p>';
print cut_str(strip_tags($result['co_content']),200).'</p></li></ul>';
$i++;
}
if($i == 0){
echo '<div class="empty_list">페이지에서는 검색된 자료가 하나도 없습니다.</div>';
} else {
echo '페이지에서 '.$i.'개의 결과가 검색되었습니다.';
}

echo '</section>';
} // 내용관리 검색 기능 끝
?>

'내용관리'에 입력한 내용이 많거나 콘텐츠 갯수가 아주 많다면 무리가 있을 수도 있겠습니다만, 제 실력으론 이 정도가 한계네요.
첨부한 파일은 기본 스킨에서 위의 작업만 한 파일입니다.

첨부파일

search.skin.php (6.2 KB) 61회 2017-09-12 04:41
|

댓글 6개

감사합니다 !!
페이지 내용검색
감사합니다~ 적용해보겠습니당
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

+
제목 글쓴이 날짜 조회
8년 전 조회 5,939
8년 전 조회 4,376
8년 전 조회 9,846
8년 전 조회 4,612
8년 전 조회 4,218
8년 전 조회 5,248
8년 전 조회 4,299
8년 전 조회 6,371
8년 전 조회 5,797
8년 전 조회 4,723
8년 전 조회 4,236
8년 전 조회 4,669
8년 전 조회 6,648
8년 전 조회 4,609
8년 전 조회 6,560
8년 전 조회 5,265
8년 전 조회 4,771
8년 전 조회 7,459
8년 전 조회 6,007
8년 전 조회 7,824
8년 전 조회 6,383
8년 전 조회 4,185
8년 전 조회 8,646
8년 전 조회 1.2만
8년 전 조회 3,681
8년 전 조회 4,535
8년 전 조회 5,262
8년 전 조회 6,033
8년 전 조회 7,476
8년 전 조회 4,777