> 백엔드 개발 > PHP 튜토리얼 > Joomla 아트의 스마트 검색 분석 소개.

Joomla 아트의 스마트 검색 분석 소개.

Barbara Streisand
풀어 주다: 2024-11-29 03:39:13
원래의
460명이 탐색했습니다.

당신은 이미 Joomla에 최신 요구 사항을 충족하는 스마트 검색 구성 요소가 내장된 검색 기능이 있다는 것을 알고 계실 것입니다. 하지만 사용자에게 조금 더 필요한 것이 있다면 어떨까요? 타사 확장 프로그램도 검색 가능하게 하려면 어떻게 해야 합니까? 이 기사 시리즈에서는 타사 Joomla 구성 요소용 스마트 검색 플러그인을 만드는 방법을 살펴보겠습니다.

역사적으로 Joomla 코어에는 "검색"과 "스마트 검색"이라는 2개의 검색 구성 요소가 있었습니다. 단순 검색은 Joomla 1.x에 포함되었으며 그 이후로 크게 변경되지 않았습니다. 이 구성 요소(com_search)가 핵심 구성 요소뿐만 아니라 검색하려면 플러그인을 작성해야 했는데, 그 본질은 주로 구성 요소에 필요한 SQL 쿼리를 제공하고 구성 요소가 이해할 수 있는 구조의 객체를 형성하는 것이었습니다. 쿼리 결과에서. 검색 자체는 본질적으로 LIKE '%word%'를 사용하여 데이터베이스에 대한 SQL 쿼리였습니다. 간단한 검색 플러그인의 도움으로 Joomla의 Sphinx 검색 엔진을 사용한 사례도 있었습니다.

Joomla 5의 스마트 검색으로 콘텐츠 인덱싱

Joomla 2.5부터는 스마트 검색 컴포넌트인 com_finder가 핵심으로 포함되었는데, 단순 검색과의 가장 큰 차이점은 콘텐츠 인덱싱이었습니다. 검색 자체는 콘텐츠의 관련성을 기반으로 결과를 생성하기 시작했습니다. 사이트 사용자의 경우 게시 시작 및 종료 날짜, 언어, 유형(기사, 카테고리, 제품 등), 특정 카테고리, 작성자 등 다양한 매개변수를 기반으로 하는 필터를 사용하여 결과를 제한할 수 있는 검색 매개변수가 나타났습니다. 내부적으로는 텍스트를 토큰으로 나누고, 토큰에 대한 가중치를 계산하는 등의 작업을 수행합니다. 구성 요소 설정에서 인덱싱 설정을 사용할 수 있습니다.

The anatomy of smart search in Joomla art Introduction.
사이트 방문자를 위한 Joomla 스마트 검색 힌트의 예:

검색창에 이것저것을 입력하면 "이것"과 "저것"이 모두 포함된 결과가 나옵니다.
검색 양식에 this not that을 입력하면 "that"이 아닌 "this"가 포함된 결과가 반환됩니다.
검색창에 이것저것 입력하면 "이것" 또는 "저것"이 포함된 결과가 반환됩니다.
검색 양식에 "이것과 저것"(따옴표 포함)을 입력하면 "이것과 저것"

이라는 정확한 구문이 포함된 결과가 반환됩니다.

저는 이것이 Joomla 코어의 기능이며 제3자 확장 프로그램이나 일종의 제3자 서비스, 일반적으로 유료 서비스가 아니라는 점을 다시 한 번 강조하고 싶습니다.

실제로 사이트 방문자는 일반적으로 이러한 추가 필터와 검색 매개변수를 모두 사용하지 않고 쿼리를 명확히 하기 위해 다시 요청한다는 사실을 접했습니다. 기사가 있는 일반 사이트에서는 검색 매개변수가 필요할 가능성이 낮지만 내부 폐쇄형 도움말 시스템이나 문서 시스템(Joomla에는 기사 및 작업 흐름 버전 관리 기능이 있습니다. docs.joomla.org에서 세부정보 참조)에서는 이러한 매개변수가 더 많이 필요합니다. 수요가 있습니다.

인덱스 업데이트(재인덱싱)

라이브 사이트에서는 제품과 기사가 추가, 보관, 삭제되고 연락처가 업데이트되는 등 끊임없이 변화하기 때문에 미니 Google의 색인을 주기적으로 업데이트해야 합니다. -검색에 포함된 최신 데이터를 사용하려면 정기적으로 콘텐츠를 다시 색인화해야 합니다. 인덱스 결과는 데이터베이스에 저장되므로 크기가 증가합니다. 이는 이 검색 구현에서는 정상적인 현상입니다.

관리자 패널에서 수동으로 색인생성을 시작할 수 있습니다
The anatomy of smart search in Joomla art Introduction.
또는 Joomla CLI 서버 명령줄을 사용하는 것이 선호되는 옵션입니다. 이렇게 하려면 사이트의 cli 폴더로 이동하세요(자세한 내용은 Joomla CLI로 작업하는 방법은 Joomla 4: 강력한 CLI 애플리케이션 문서 참조).

The anatomy of smart search in Joomla art Introduction.
Joomla의 CLI 폴더.
이 폴더에서 다음 명령을 실행하세요.

php joomla.php finder:index
로그인 후 복사

Joomla는 콘텐츠의 색인을 매우 빠르게 생성합니다.

The anatomy of smart search in Joomla art Introduction.
CLI를 통해 Joomla 5에서 스마트 검색으로 인덱싱합니다.
예약된 실행을 위해 이 명령을 CRON에 추가하면 사이트 방문자가 현재 검색 결과를 보고 기뻐할 것입니다.

0 2 * * * php /path/to/site/public_html/cli/joomla.php finder:index >/dev/null 2>&l
로그인 후 복사

Joomla에서 사용자 정의 필드 인덱싱

Joomla 사용자 필드는 다양한 유형의 사이트에 사용되며, 사이트에서 온라인 결제 및 배송 계산이 필요하지 않은 서비스 또는 상품 카탈로그에 사용되는 경우가 많습니다. Joomla가 이러한 필드의 값으로 검색하려면 각 필드에 대해 "색인 검색" 매개변수를 지정해야 합니다(맨 아래의 "옵션" 탭).

The anatomy of smart search in Joomla art Introduction.
또한 레이아웃 재정의를 사용하여 검색 결과에 필드 값을 표시하는 방법을 설명하는 스마트 검색 및 JFilters 결과에 사용자 정의 필드 추가 문서를 참조할 수도 있습니다.
분류는 검색 결과에 필드 데이터를 표시하는 방법입니다(예: "카테고리: 모든 카테고리", "저자: 모든 작성자"). 분류는 중첩될 수 있습니다. 필드 값으로 검색하려면 "검색 가능하게 만들기" 또는 "검색 가능하게 만들고 분류법으로 추가" 옵션을 선택하세요.

The anatomy of smart search in Joomla art Introduction.
Joomla 스마트 검색의 분류 예시.

다음 기사에서는 JoomShopping의 예를 사용하여 Joomla 구성 요소용 스마트 검색 플러그인을 만드는 방법을 살펴보겠습니다. 우리를 방해할 수 있는 미묘한 차이와 세부 사항에 직면하게 되지만 결국에는 모든 어려움을 극복하고 Joomla 5용으로 작동하는 스마트 검색 플러그인을 만들 것입니다.

Joomla 커뮤니티 리소스

  • https://joomla.org/
  • Joomla 커뮤니티 매거진에 실린 이 기사

위 내용은 Joomla 아트의 스마트 검색 분석 소개.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿