RedPlus 개인 블로그

시삽: 레드플러스 님 
게시판 이동:
 제목 : 12. 검색(Search) 기능 구현하기
글번호: 263
작성자: Administrator ( 레드플러스 / redplus@live.com )
작성일: 2011/06/09 오전 11:49:01 (2011/06/09 오전 11:49:01 수정)
조회수: 4218

 

소개

안녕하세요. 박용준입니다.

이번 시간에는 Orchard CMS 메인에 검색 기능을 추가해 보도록 하겠습니다.

Orchard는 자그마한 모든 기능이 다 모듈(Module)이라는 단위로 제공됩니다. 검색 기능 역시 마찬가지입니다. 기본값으로 검색 기능은 내장되어있지 않고, 언제든지 온라인 갤러리 사이트에서 다운로드 받아서 적용할 수 있습니다.

또한, 대시보드에서 원하는 항목만을 검색에 노출되도록 설정이 가능합니다. 예를 들어 Content의 제목과 내용만을 검색 대상에 올려둘 수 있습니다.

 

따라하기

Step 1: 검색 기능 제공 모듈 설치 및 활성화

1. Orchard [대시보드]-[모듈]-[갤러리] 탭을 선택 후 검색 텍스트박스에 “Search”를 입력 후 [검색] 버튼을 클릭합니다.

image

 

2. 검색 기능 관련해서 연관된 모듈들은 아래 그림과 같이 3개의 모듈이 서로 연관이 있습니다. 3개의 모듈을 모두 설치 및 활성화시킵니다. (여기서 Search 모듈이 설치시 에러가 난다면 다시 한번 설치해보시기 바랍니다.)

image

 

Step 2: 검색 기능 적용하기

1. 메인 페이지로 돌아와서 아래 그림의 오른쪽 상단 부분에 검색 기능을 적용하고자 합니다.

image

 

2. [대시보드]-[위젯]-[현재 레이어] 항목 중 모든 웹 페이지에 검색 기능을 적용하고자한다면 [Default] 항목을 선택한 후 [추가] 버튼을 클릭합니다.

image

 

3. [위젯 선택] 화면으로 이동하면 검색 관련 모듈 설치 후 [Search Form] 위젯이 추가됨을 알 수 있습니다. [Search Form] 위젯을 클릭합니다.

image

 

4. [위젯 추가] 화면에서 기본값을 확인 후 [저장] 버튼을 눌러 검색 폼을 적용합니다.

image

 

5. 검색 폼이 적용됨을 확인 후 메인 페이지로 이동합니다.

image

 

6. 메인 페이지로 이동 후 오른쪽 상단에 검색 폼이 적용되었음을 확인합니다.

image

 

7. 검색 폼에 원하는 검색어를 입력한 후 [Search] 버튼을 클릭하면 검색어에 해당하는 내용들이 검색되어져 나타남을 알 수 있습니다. 단, 여기서 검색의 대상은 [대시보드]-[설정]-[Search]에서 설정한 항목들만을 검색합니다.

image

 

마무리

CMS에 데이터를 페이지/위젯/기타 모듈 등을 활용하여 입력하는 것 만큼 중요한 게 원하는 시점에 빨리 해당 콘텐츠를 찾아가는 일입니다. 그만큼 검색(Search)의 기능은 CMS에서 필수 요소입니다.

Orchard는 Lucene.NET이라는 오프소스 검색엔진을 탑재하여 검색 효율을 상당히 높였습니다.

자~ 이제 제법 사이트의 구조가 갖추어지고 있는 느낌이 나시나요??? 조금 더 새로운 기능을 위해서 전진 또 전진하도록 하겠습니다… 화이팅!!!

 

끝.

 

참고 자료

http://orchardproject.net/docs/Search-and-indexing.ashx

 

관련글

 

 

본 강좌는 아래 경로에서 연재되고 있는 강좌입니다.

오픈소스 웹어플리케이션 사용자 Tip과 강좌 – OSSFair(http://www.sqler.com/OSS)

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트


관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 13. Content Localization(컨텐트에 대한 다국어 처리) - Administrator 2011-06-09 4123
현재글 12. 검색(Search) 기능 구현하기 - Administrator 2011-06-09 4218
다음글 11. Chapters 모듈 설치 및 적용 - Administrator 2011-06-08 3780
관련 페이지 리스트
numtitlenamedateview
388 C 언어에서 값 전달과 참조 전달(Call By Value and Call By Re... Administrator 2023-03-09 1780
387 병합 알고리즘 순서도 2022-10-22 2651
386 C 언어 강의: scanf를 엔터키를 기준으로 여러 행으로 값을 입력 받기 Administrator 2022-01-09 3608
385 C 언어: scanf 사용해서 표준 입력인 콘솔로부터 나이를 정수로 입력 받아 출력 Administrator 2022-01-07 2603
384 Java 코드 샘플 - Function 인터페이스로 람다 식 만들기 Administrator 2022-01-04 2513
383 C# 코드 샘플 - 널 조건부 연산자 사용하기 Administrator 2022-01-02 2551
382 C# 코드 샘플 - 널 병합 연산자와 default 키워드 Administrator 2022-01-02 2481
381 C# 코드 샘플 - 널 병합 연산자로 문자열 변수의 NULL 값 확인하기 Administrator 2022-01-02 2394
380 C# 강의 - 14세 미만 체크 메서드 구현 Administrator 2022-01-01 2431
379 C 언어 천 단위 콤마 찍기 thousands_separator.c Administrator 2021-12-30 3270
378 for 문 순서도 - for 문(for loop) 순서도(flowchart) Administrator 2021-12-28 5288
377 C 언어 코드 샘플 - 전처리기 - 조건부 컴파일 Administrator 2021-12-27 2429
376 C 언어 코드 샘플 - 전처리기 - 매크로 함수 Administrator 2021-12-27 2431
375 http-server 설치하기 - 로컬 루프백 주소로 웹페이지 실행 2021-12-27 2450
374 C 언어 코드 샘플 - N명의 학생의 점수를 입력받아 1차원 배열에 저장 후 총점 구... Administrator 2021-12-27 2464
373 Java 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2380
372 C 언어 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2405
371 C# 교과서 강좌 - LINQ - Select 확장 메서드에 익명 형식 사용하기 Administrator 2021-12-26 2473
370 C# 교과서 강의 - LINQ - Select 확장 메서드를 사용하여 새로운 형태로 ... Administrator 2021-12-26 2418
369 C 언어 코드 샘플 - static-shared - 정적(공유) 변수 사용하기 Administrator 2021-12-26 2447
 
 
 
손님 사용자 Anonymous (손님)
로그인 Home