WordPress.org

Make WordPress Core

Ticket #21803: add_search_fields.2.patch

File add_search_fields.2.patch, 933 bytes (added by mark8barnes, 20 months ago)

Revised patch incorporating scribu's correction

  • wp-includes/query.php

     
    21872187                        $searchand = ''; 
    21882188                        foreach( (array) $q['search_terms'] as $term ) { 
    21892189                                $term = esc_sql( like_escape( $term ) ); 
    2190                                 $search .= "{$searchand}(($wpdb->posts.post_title LIKE '{$n}{$term}{$n}') OR ($wpdb->posts.post_content LIKE '{$n}{$term}{$n}'))"; 
    2191                                 $searchand = ' AND '; 
     2190                                $search_fields = array( "$wpdb->posts.post_title", "$wpdb->posts.post_content" ); 
     2191                                $search_fields = apply_filters( 'search_fields', $search_fields ); 
     2192                                if (is_array($search_fields)) { 
     2193                                        foreach( $search_fields as &$s ) 
     2194                                                $s = "({$s} LIKE '{$n}{$term}{$n}')"; 
     2195                                        $search .= "{$searchand}(".implode( ' OR ', $search_fields  ).")"; 
     2196                                        $searchand = ' AND '; 
     2197                                } 
    21922198                        } 
    21932199 
    21942200                        if ( !empty($search) ) {