add_filter('posts_search', 'search_by_title_or_sku', 10, 2); function search_by_title_or_sku($search, $query) { global $wpdb; if (!is_admin() && $query->is_search() && $query->is_main_query()) { $term = esc_sql($query->get('s')); $search .= " OR {$wpdb->posts}.ID IN ( SELECT post_id FROM {$wpdb->postmeta} WHERE meta_key = '_sku' AND meta_value LIKE '%{$term}%' )"; } return $search; }