게시판 글 검색시 검색 대상 선택

VNote 2023.03.28 10:36:53

사용된 모든 예제는 '제목+내용' 선택을 기본으로 작성되었습니다.

직접 수정하실 때에는 본문 중 굵게 표시된 지시자 부분을 다음을 참고하여 수정해주세요.

제목 → title 

내용 → content
제목+내용 → title_content

댓글 → comment
이름 → user_name
닉네임 → nick_name
아이디 → user_id
태그 → tag

확장변수1 → extra_vars1 (확장변수 번호를 알맞게 수정해주세요.)

 

 

 

1. 검색창에서 특정 선택이 기본 선택으로 오게 하기

modules/board/skins/xe_board/list.html의

 

<select name="search_target">
    <!--@foreach($search_option as $key => $val)-->
        <option value="{$key}" <!--@if($search_target==$key)-->selected="selected"<!--@end-->>{$val}</option>
    <!--@end-->
</select>

 

이 부분을 아래와 같이 바꿔줍니다.

<select name="search_target">
    <option value="title_content" <!--@if($search_target=='title_content')-->selected="selected"<!--@end-->>{$search_option[title_content]}</option>
    <!--@foreach($search_option as $key => $val)-->
        <!--@if($key!='title_content')-->
            <option value="{$key}" <!--@if($search_target==$key)-->selected="selected"<!--@end-->>{$val}</option>
        <!--@end-->
    <!--@end-->
</select>

 

 

 

 

2. 선택창은 없애고 무조건 특정 선택으로만 검색되게 하기

같은 modules/board/skins/xe_board/list.html의 

 

<select name="search_target">
    <!--@foreach($search_option as $key => $val)-->
        <option value="{$key}" <!--@if($search_target==$key)-->selected="selected"<!--@end-->>{$val}</option>
    <!--@end-->
</select>

 

위 부분을 아래와 같이 바꿔줍니다.

<input type="hidden" name="search_target" value="title_content" />

 

 

 

 

 

3. 원하는 선택만 넣기

역시 modules/board/skins/xe_board/list.html의

<select name="search_target">
    <!--@foreach($search_option as $key => $val)-->
        <option value="{$key}" <!--@if($search_target==$key)-->selected="selected"<!--@end-->>{$val}</option>
    <!--@end-->
</select>

 

위 부분을 아래와 같은 방식으로 수정합니다. 밑줄 친 부분은 선택 하나마다 지시자만 바꿔 반복해서 넣어 주세요.

<select name="search_target">

     <option value="title_content" <!--@if($search_target=='title_content')-->selected="selected"<!--@end-->>{$search_option[title_content]}</option>

</select>

 

 

 

 

 

※ 주의사항

위와 같이 기본 게시판 살갗(skin)을 손대는 경우 판올림시마다 초기화될 수 있으므로,

modules/board/skins 안의 xe_board 폴더를 하나 복제하여 새로운 스킨을 만든 후 적용하시길 권장합니다.

(구분을 위해 skin.xml 안에 살갗 이름만 바꿔주세요. <title xml:lang="ko">적당한 이름</title>)