웹마스터 팁

없는것 같아 올립니다.

통합검색에서 확장변수를 검색하는 방법입니다.

[ 통합검색에서 확장변수 검색하기 ]

제목,내용,제목+내용,댓글,태그만 설정되어있는 검색항목에 확장변수를 추가합니다.

1. /zbxe/modules/integration_search/integration_search.view.php 파일을 열어

51번째 줄  //검색대상 변수 설정 을 찾아 아래 코드로 대체합니다.

// 검색대상 변수 설정 (확장변수 추가)
$search_target = Context::get('search_target');
if(!in_array($search_target, array('title','content','title_content','comment','tag','extra_vars1','extra_vars2','extra_vars3','extra_vars4','+ '+ 'extra_vars5','extra_vars6','extra_vars7',
'extra_vars8'+ ','extra_vars9','extra_vars10','extra_vars11','extra_vars12','+ 'extra_vars13','extra_vars14','extra_vars15','extra_vars16','extra_vars17',
'extra_vars18','extra_vars19','extra_vars20'))) $search_target = 'title';

2. /zbxe/modules/integration_search/lang/ko.lang.php 파일을 열어

22번째 줄  '+ 'tag'+ ' => '태그', 를 찾아 그 아래 하단 코드를 수정하여 사용할 검색항목을 추가합니다.
 
'extra_vars1' => '확장변수1',
'extra_vars2' => '확장변수2',
'extra_vars3' => '확장변수3',
'extra_vars4'=> '확장변수4'+ ',
'extra_vars5' => '확장변수5',
'extra_vars6' => '확장변수6',
'extra_vars7' => '확장변수7',
'extra_vars8' => '확장변수8',
'extra_vars9' => '확장변수9',
'extra_vars10' => '+ '확장변수10',
'extra_vars11' => '확장변수11',
'extra_vars12' => '확장변수12',
'extra_vars13' => '확장변수13',
'extra_vars14' => '확장변수14',
'extra_vars15' => '확장변수15',
'extra_vars16' => '확장변수16',
'extra_vars17' => '확장변수17',
'extra_vars18' => '확장변수18',
'extra_vars19' => '확장변수19'+ ',
'extra_vars20' => '확장변수20',
예) 'extra_vars1'=>'+ '취미', 로 추가하였을 경우, 통합검색 창에 취미라는 항목이 생깁니다.
검색에 추가하고싶은 확장변수를 제외한 나머지 확장변수는 추가하지 마시길 바랍니다.

[다중검색항목 추가하기]

<제목+내용> 처럼 자신이 원하는데로 다중검색 항목을 추가합니다.

1. /zbxe/modules/integration_search/integration_search.view.php 파일을 열어

51번째 줄  //검색대상 변수 설정 을 추가하고싶은 항목의 타겟이름을 추가합니다.

// 검색대상 변수 설정 (확장변수 추가)
$search_target = Context::get('search_target');
if(!in_array($search_target, array('title','content','title_content','comment','tag','extra_vars1','extra_vars2','extra_vars3','extra_vars4','extra_vars5','extra_vars6','extra_vars7',
'extra_vars8','extra_vars9','extra_vars10','extra_vars11','extra_vars12','extra_vars13','extra_vars14','extra_vars15','extra_vars16'+ ','extra_vars17',
'extra_vars18','extra_vars19'+ ','extra_vars20','extra_vars1_extra_vars2'))) $search_target = 'title';
예) ...'extra_vars20','extra_vars1_extra_vars2'))... 와 같이 extra_vars1_extra_vars2의 타겟이름을 추가합니다.
이름은 임의로 결정할 수 있습니다.

2. /zbxe/modules/integration_search/lang/ko.lang.php 파일을 열어

22번째 줄  'tag' => '태그', 를 찾아 그 아래 타겟이름과 한글표기명을 추가합니다.
 
'extra_vars1_extra_vars2 ' => '확장변수1+확장변수2',
'title_extra_vars3 ' => '제목+확장변수3',
예)'extra_vars1_extra_vars2 ' => '확장변수1+확장변수2', 일경우 앞에있는 영문이름은 1번에서 추가한 이름과 동일해야합니다.

3. /zbxe/modules/document/document.model.php 파일을 열어

215번째 줄 case 'tag'+ ' : 항목 break; 아래로 하단 코드를 수정하여 추가합니다.

case 'extra_vars1_extra_vars2' :
        if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
        $args->s_extra_vars1 = $search_keyword;
        $args->s_extra_vars2 = $search_keyword;
        $use_division = true;
    break;
예) case 'extra_vars1_extra_vars2': 에서 영문이름은 1,2번에서 추가한 이름과 동일해야합니다.
$args->s_extra_vars1 = $search_keyword; 일경우 확장변수1을 키워드로 검색함임으로, 다른 확장변수를 검색하거나, 제목등을 검색할경우,
$args->s_(타겟이름) = $search_keyworld; 와 같이 작성하시면 됩니다.

※ 확장변수1~20까지 전부다 검색하는 경우, 1,2,3번에 쓰이는 타겟네임을 'extra_all'등으로 지정하고,
document.model.php 파일에 case를 만들어 여러줄 추가해주시면 됩니다.




좋은 자료 되셨길 바랍니다^^