add_filter( 'posts_search', 'include_password_protected_posts_in_search_result' );
function include_password_protected_posts_in_search_result( $search ) {
        global $wpdb;
        if( !is_user_logged_in() ) {
                $pattern = " AND ({$wpdb->prefix}posts.post_password = '')";
                $search = str_replace( $pattern, '', $search );
        }
        return $search;
}

当然,这些是写在主题的function.php文件中的。