그누보드 인기 검색어 출력 및 기간·개수 옵션 설정 방법
페이지 정보

본문
그누보드 사이트에서 인기 검색어의 출력 위치를 확인하고, 출력 개수와 조회 기간을 설정하거나 고정 키워드로 변경하는 방법을 안내합니다.
그누보드 버전별 인기 검색어 출력 위치 및 호출 방식
그누보드에서 인기 검색어 기능은 최근 검색 기록을 기반으로 동적으로 출력되며, 관련 함수를 담당하는 파일은 lib/popular.lib.php입니다.
버전별 출력 코드 위치
- 그누보드 5.3 버전 이상:
head.php파일 상단에 출력 코드가 위치합니다. - 그누보드 5.2 이하 버전:
tail.php파일에 위치합니다.
기본 함수 호출 방식
코드 내에서 인기 검색어를 출력하는 기본적인 함수 구조와 인자값은 다음과 같습니다.
popular('스킨', 출력개수, 기간);
- 그누보드 5.3 버전 예시 (기본 옵션 생략형):
<?php echo popular(); // 인기검색어, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정?> - 그누보드 5.2 이하 버전 예시 (스킨 지정형):
<?php echo popular('basic'); // 인기검색어, 테마의 스킨을 사용하려면 스킨을 theme/basic 과 같이 지정?>
출력 옵션 변경 방법
기본 옵션에서 출력 개수나 조회 기간을 변경하려면 함수 뒤에 나머지 인자값을 모두 추가하여 호출합니다. 예를 들어 출력 개수를 5개, 기간을 10일로 설정하려면 아래와 같이 작성합니다.
<?php echo popular('basic', 5, 10); // 인기검색어?>
인기 검색어 스킨은 skin/popular 폴더에서 관리되며, 새로운 스킨을 제작하여 업로드한 뒤 스킨명만 변경하여 적용할 수 있습니다.
인기 검색어 출력 함수(popular)의 인자값 설정 방법
그누보드에서 인기 검색어 출력을 담당하는 함수는 lib/popular.lib.php 파일에 정의된 popular()입니다. 기본 함수 구조는 다음과 같습니다.
function popular($skin_dir='basic', $pop_cnt=7, $date_cnt=3)
기본 설정은 스킨명 basic, 출력 개수 7개, 집계 기간 3일로 지정되어 있습니다. 이 기본 옵션을 변경하여 출력 개수와 조회 기간을 조절하려면 함수 호출 시 인자값을 차례대로 입력하면 됩니다.
사용 예시
출력 개수를 5개, 집계 기간을 10일로 변경하고 싶다면 호출 코드를 다음과 같이 작성합니다.
<?php echo popular('basic', 5, 10); // 인기검색어?>
- 첫 번째 인자(
'basic'): 사용할 스킨 디렉토리명 (skin/popular폴더 안의 스킨명, 테마 스킨의 경우theme/basic과 같이 지정 가능) - 두 번째 인자(
5): 출력할 검색어 개수 - 세 번째 인자(
10): 검색어를 집계할 기간(일 수)
출력 코드 위치
버전에 따라 인기 검색어 함수가 호출되는 파일 위치에 차이가 있습니다.
- 그누보드 5.3 이상 버전:
head.php파일 - 그누보드 5.2 이하 버전:
tail.php파일
그누보드 인기 검색어 고정 출력 및 설정 방법
그누보드에서 실시간 검색 기록 기반의 인기 검색어 대신 운영자가 원하는 특정 검색어들만 항상 고정해서 출력하려면 스킨 파일을 수정하거나 관리자 페이지 환경설정의 여분필드를 활용해야 합니다.
1. 수정할 스킨 파일 위치
인기 검색어 스킨 디렉토리인 skin/popular/ 안의 파일(skin/popular/basic/popular.skin.php 또는 테마를 사용 중인 경우 테마 폴더 내 해당 스킨 경로)을 수정합니다.
2. 고정 검색어 배열 지정 방식
skin/popular/basic/popular.skin.php 파일 상단의 ?> 안쪽에 고정 검색어 배열($popular_array)을 직접 정의하거나 관리자 환경설정과 연동할 수 있습니다.
- 직접 배열 지정 예시
$popular_array = array("그누보드","영카트","스킨","테마","플러그인"); - 관리자 여분필드 연동 예시검색어를 자주 변경해야 하는 경우 관리자 페이지의 기본환경설정 > 여분필드1에 콤마(
,)로 구분하여 키워드들을 입력한 뒤, 스킨 파일에서 아래와 같이 불러올 수 있습니다.$popular_array = explode(",", $config['cf_1']);
3. 출력부 링크 코드 수정
배열에 지정한 고정 검색어가 올바른 검색 결과 링크로 출력되도록 popular.skin.php 파일 내의 리스트 출력 코드를 수정합니다.
- 수정 전 출력 코드 예시
<li><a href="<?php echo G5_BBS_URL?>/search.php?sfl=wr_subject&sop=and&stx=<?php echo urlencode($list[$i]['pp_word'])?>"><?php echo get_text($list[$i]['pp_word']);?></a></li> - 수정 후 고정 배열 적용 코드 예시
<li><a href="<?php echo G5_BBS_URL?>/search.php?sfl=wr_subject&sop=and&stx=<?php echo urlencode($popular_array[$i])?>"><?php echo get_text($popular_array[$i]);?></a></li>
4. 출력 개수 및 함수 호출 위치 확인
출력 개수 설정은 함수 호출부에서 진행합니다. 그누보드 버전에 따라 호출 코드가 위치하는 파일이 다릅니다.
- 그누보드 5.3 이상 버전:
head.php파일 - 그누보드 5.2 이하 버전:
tail.php파일 - 호출 함수 예시 (
popular('스킨', 출력개수, 기간))<?php echo popular('basic', 5, 3); // 인기검색어?>
그누보드 인기 검색어 출력 및 설정 방법
그누보드에서 인기 검색어 기능은 최근 가장 많이 검색된 검색어를 동적으로 출력하는 기능입니다. 관련 함수는 lib/popular.lib.php 파일에 정의되어 있으며, 파일 상단에 include_once(G5_LIB_PATH.'/popular.lib.php'); 코드로 포함되어 있습니다.
버전별 출력 위치 및 함수 호출 방법
인기 검색어 출력 및 설정에 관한 상세 내용은 Q1(출력 위치)과 Q2(인자값 설정)를 참고하십시오.
실시간 순위 대신 고정 검색어 출력 및 여분필드 활용 방법
실시간 검색 기록에 따라 순위가 바뀌는 대신 원하는 특정 검색어들만 항상 고정해서 출력하려면 스킨 파일을 수정합니다. 테마를 사용하는 경우 테마 폴더 내의 스킨을 수정해야 합니다.
1. 배열을 직접 지정하는 방법skin/popular/basic/popular.skin.php 파일 상단의 ?> 안쪽에 고정 배열을 정의합니다.
$popular_array = array("그누보드","영카트","스킨","테마","플러그인");
이후 같은 파일 내의 링크 출력 부분을 아래와 같이 수정합니다.
<li><a href="<?php echo G5_BBS_URL?>/search.php?sfl=wr_subject&sop=and&stx=<?php echo urlencode($popular_array[$i])?>"><?php echo get_text($popular_array[$i]);?></a></li>
2. 관리자 페이지 여분필드1을 활용하는 방법
검색어를 자주 변경해야 하는 사이트라면 관리자 페이지를 통해 손쉽게 관리할 수 있습니다.
- 관리자 페이지 > 환경설정 > 기본환경설정 > 여분필드1 항목으로 이동합니다.
- 여분필드1 값에 원하는 검색어를 콤마(,)로 구분하여 입력합니다 (예:
그누보드,영카트,스킨,테마,플러그인). skin/popular/basic/popular.skin.php파일에서 직접 배열을 선언하는 부분 대신 아래 코드를 추가하여 관리자 설정값을 불러옵니다.
$popular_array = explode(",", $config['cf_1']);
이후 관리자 페이지의 환경설정에서 여분필드 값을 변경하면 프론트엔드의 인기 검색어 목록이 자동으로 반영됩니다.
상황별 판단 및 행동 가이드
| 내 상황 | 우선할 판단 | 다음 행동 |
|---|---|---|
| 그누보드 버전에 맞는 인기 검색어 출력 위치를 찾고 싶음 | 5.3 이상은 head.php, 5.2 이하는 tail.php 확인 | 해당 파일에서 popular() 함수 호출부 확인 및 인자값(스킨, 출력개수, 기간) 설정 |
| 실시간 검색 순위 대신 특정 키워드들을 고정으로 노출하고 싶음 | skin/popular/ 안의 스킨 파일 수정 결정 | popular.skin.php 상단에 $popular_array 배열 정의 또는 관리자 여분필드1($config['cf_1'])과 explode() 함수 연동 |
| 검색어 목록을 관리자 페이지에서 손쉽게 변경하고 싶음 | 관리자 환경설정의 여분필드 활용 검토 | 관리자 페이지 > 기본환경설정 > 여분필드1에 콤마(,)로 키워드 입력 후 스킨에서 explode()로 불러오기 |
실전 FAQ
Q. 관리자 여분필드1에 입력한 고정 검색어가 출력되지 않거나 링크를 눌렀을 때 에러가 발생합니다.
- 실행 중 막히는 점:
$config['cf_1']값을explode()로 불러올 때 콤마(,) 구분 누락이나 배열 인덱스 초과 문제로 인해$popular_array[$i]가 비어버리면 링크 주소가 깨질 수 있습니다. - 예외 및 대안: 관리자 여분필드1에 입력된 값이 정확히 콤마로 구분되어 있는지 확인하고,
popular.skin.php파일 내의 출력부stx=<?php echo urlencode($popular_array[$i])?>코드가 배열 요소와 올바르게 매칭되는지 점검하십시오.
Q. 테마를 사용 중인데 인기 검색어 스킨 파일을 수정해도 화면에 반영되지 않습니다.
- 실행 중 막히는 점: 기본
skin/popular/경로의 파일을 수정했으나, 사이트에서 테마를 사용 중이어서 테마 폴더 내의 스킨 파일이 우선 적용되고 있을 수 있습니다. - 예외 및 대안: 테마를 사용 중인 경우
skin/popular/가 아니라 사용 중인 테마 폴더 내부의 스킨 경로(theme/테마명/skin/popular/...)에 있는popular.skin.php파일을 수정해야 합니다.
함께 보면 좋은 글
참고자료
기타 참고자료
- 이전글그누보드 영카트 수동 패치 및 버전 관리 가이드 26.10.09
- 다음글그누보드 게시판 스킨 제작 시 파일 및 리소스 경로 설정 방법 26.10.09
댓글목록
등록된 댓글이 없습니다.