리스트 페이지 검색 옵션 설정

글작성 페이지에 생성한 여러 입력필드 중 가능한 운동을 선택하는 항목이 있습니다.

축구, 농구, 축구 + 농구 라는 세가지 선택지가 라디오 버튼으로 존재합니다.

이에 대해 리스트 페이지에서 검색창을 구성했습니다.

검색창의 검색 옵션에도 '축구', '농구', '축구+농구' 세가지가 라디오 버튼으로 존재합니다.

검색 옵션에 '축구+농구'를 선택하고 검색버튼을 누르면 의도한대로 '축구+농구'를 선택한 게시물이 나타납니다.

이에 더해 검색 옵션으로 '축구' 또는 '농구'를 선택했을 때 '축구+농구'를 선택한 게시물이 나타나게 하려고합니다.

 

function.php - kboard_list_where

if ( !empty($_GET['kboard_search_option']['game_type']['value']) ) {
    if ( $_GET['kboard_search_option']['game_type']['value'] == '축구' ) {
        $where .= " OR (`option_game_type`.`option_key`='game_type' AND `option_game_type`.`option_value` = '축구+농구')";
    }
}

 

위와 같이 추가했을 때는 검색창 옵션에서 축구를 선택하고 검색했을때에도 축구+농구 선택 게시글이 나오긴 합니다만, 검색창의 검색 조건이 여러개인데 다른 조건들이 싹 무시되고 '축구+농구'면 모두 나오는 것 같습니다. 
예를 들어 검색창의 다른 옵션 중 하나인 나이 입력필드 검색 옵션은 20세 까지로 설정했는데, 축구+농구 게시글 중 나이는 26세를 입력한 게시글도 리스트에 표시됩니다. 

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요