Hi Ionnis,
I was able to think of a viable solution for this.
The solution is that you will need 2 views and a custom filter on your view.
First you will need to create a view that will list the Authors ID.
Example of the author ID view
[wpv-items-found]
<!-- wpv-loop-start -->
<wpv-loop>[wpv-item index=1][wpv-user field="ID"][wpv-item index=other],[wpv-user field="ID"]</wpv-loop>
<!-- wpv-loop-end -->
[/wpv-items-found]
On an important note that for the Author ID view you will need to use some javascript to strip the white spaces from the view. So add this to the JS section.
jQuery("#wpv_control_select_post_author > option").each(function () {
this.value = this.value.trim();
});
Then you will need the Author Meta view that lists some author meta information. In this view we are using the nickname.
[wpv-items-found]
<!-- wpv-loop-start -->
<wpv-loop>[wpv-item index=1][wpv-user field="nickname"][wpv-item index=other],[wpv-user field="nickname"]</wpv-loop>
<!-- wpv-loop-end -->
[/wpv-items-found]
Finally on our view with the parametric search view you will create a custom filter like this.
<label>[wpml-string context="wpv-views"]Post Author[/wpml-string]</label>
[wpv-control-postmeta field="post_author" type="select" source="custom" url_param="author-filter" values="[wpv-view name='list-author-id']" display_values="[wpv-view name='list-author-name']"]
Then under the query filter you will click "Add A filter" and then add the filter for author and set it to be filtered by a URL parameter.
Also you will need to add this to your function.php file and change the ID to the id's for the 2 views that you are using.
add_filter( 'wpv_filter_wpv_view_shortcode_output', 'prefix_clean_view_output', 5, 2 );
function prefix_clean_view_output( $out, $id ) {
if ( $id == '109' || $id == '110' ) { //Please adjust to your Views ID
$start = strpos( $out, '<!-- wpv-loop-start -->' );
if (
$start !== false
&& strrpos( $out, '<!-- wpv-loop-end -->', $start ) !== false
) {
$start = $start + strlen( '<!-- wpv-loop-start -->' );
$out = substr( $out , $start );
$end = strrpos( $out, '<!-- wpv-loop-end -->' );
$out = substr( $out, 0, $end );
}
}
return $out;
}
Thanks,
Shane