필드 추가 검색하기...질문입니다.

간단히 만들어봤습니다.

게시판 스킨 list.php 파일에 검색 코드를 추가해주세요.

/wp-content/plugins/kboard/skin/사용중인스킨/list.php 파일입니다.

추가하신 입력 필드의 name 값과 이름 등을 써주세요.

<select name="target">
    <option value=""><?php echo __('All', 'kboard')?></option>
    <option value="title"<?php if(kboard_target() == 'title'):?> selected="selected"<?php endif?>><?php echo __('Title', 'kboard')?></option>
    <option value="content"<?php if(kboard_target() == 'content'):?> selected="selected"<?php endif?>><?php echo __('Content', 'kboard')?></option>
    <option value="member_display"<?php if(kboard_target() == 'member_display'):?> selected="selected"<?php endif?>><?php echo __('Author', 'kboard')?></option>
    <option value="kboard_option_newfield"<?php if(kboard_target() == 'kboard_option_newfield'):?> selected="selected"<?php endif?>>새로운필드</option>
</select>

 

그 다음 테마의 functions.php 파일에 아래 코드를 추가해주세요.

add_filter('kboard_list_where', 'my_kboard_list_where', 10, 3);
function my_kboard_list_where($where, $board_id, $content_list){
    global $wpdb;
    
    $skin_option_prefix = 'kboard_option_';
    $key = kboard_target();
    
    if(strpos($key, $skin_option_prefix) !== false){
        $key = sanitize_key(str_replace($skin_option_prefix, '', $key));
        $value = kboard_safeiframe(kboard_xssfilter(kboard_keyword()));
        
        $key = esc_sql($key);
        $value = esc_sql($value);
        
        $where = "`board_id`='$board_id' AND `uid` IN (SELECT `content_uid` FROM `{$wpdb->prefix}kboard_board_option` WHERE `option_key`='$key' AND `option_value` LIKE '%{$value}%') AND `notice`='' AND `parent_uid`='0' AND (`status`='' OR `status` IS NULL OR `status`='pending_approval')";
    }
    
    return $where;
}

 

일부 버그나 속도가 느린 등 문제가 있을 수 있습니다.

차후 업데이트에서 최적화된 기능을 추가하도록 하겠습니다.

 

--

예전에 제가 올린 글에 대한 답변글인데 이제서야 확인후 작업해보았지만..

생각처럼 잘 안되네요..

그 다음 테마의 functions.php 파일에 아래 코드를 추가해주세요. <<- 코드를 넣으면.. 화면이 500 에러가 뜹니다..

기본이 워낙 없으니..ㅜㅜ 스스로 해결할 능력이 안되네요..

그리고..

 

현재 전체/제목/작성자/ 이런식으로 검색이 되는데 ..

그냥 작성자나 필드추가된 내용이 전체에서 검색이 가능하면 됩니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요