I've adjusted the code to "Custom Code" section as given under:
add_filter('wpv_filter_query', 'func_add_missing_url_params', 99, 3);
function func_add_missing_url_params($query_args, $setting,$view_id) {
if($view_id == 7539) {
global $current_user;
$current_user_id = $current_user->ID;
$wpv_post_search_name = "custom_wpv_post_search";
$car_year_name = "custom_car_year";
$car_make_name = "custom_car_make";
$car_model_name = "custom_car_model";
// if($query_args['paged']==1 and isset($_GET['wpv_view_count'])) {
if(isset($_GET['wpv_post_search']) and !empty($_GET['wpv_post_search'])){
if ( !metadata_exists( 'user', $current_user_id, $wpv_post_search_name ) ) {
add_user_meta($current_user_id, $wpv_post_search_name,$_GET['wpv_post_search']);
}else{
update_user_meta($current_user_id, $wpv_post_search_name,$_GET['wpv_post_search']);
}
}else if(isset($_GET['car_year']) and !empty($_GET['car_year'])){
if ( !metadata_exists( 'user', $current_user_id, $car_year_name ) ) {
add_user_meta($current_user_id, $car_year_name,$_GET['car_year']);
}else{
update_user_meta($current_user_id, $car_year_name,$_GET['car_year']);
}
}else if(isset($_GET['car_make']) and !empty($_GET['car_make'])){
if ( !metadata_exists( 'user', $current_user_id, $car_make_name ) ) {
add_user_meta($current_user_id, $car_make_name,$_GET['car_year']);
}else{
update_user_meta($current_user_id, $car_make_name,$_GET['car_year']);
}
}else if(isset($_GET['car_model']) and !empty($_GET['car_model'])){
if ( !metadata_exists( 'user', $current_user_id, $car_model_name ) ) {
add_user_meta($current_user_id, $car_model_name,$_GET['car_year']);
}else{
update_user_meta($current_user_id, $car_model_name,$_GET['car_year']);
}
}
// }else {
$car_model_value = $car_make_value = $car_year_value = $wpv_post_search_value = 0;
if(metadata_exists( 'user', $current_user_id, $car_model_name )){
$car_model_value = get_user_meta($current_user_id, $car_model_name,true);
}else if(metadata_exists( 'user', $current_user_id, $car_make_name )){
$car_make_value = get_user_meta($current_user_id, $car_make_name,true);
}if(metadata_exists( 'user', $current_user_id, $car_year_name )){
$car_year_value = get_user_meta($current_user_id, $car_year_name,true);
}if(metadata_exists( 'user', $current_user_id, $wpv_post_search_name )){
$wpv_post_search_value = get_user_meta($current_user_id, $wpv_post_search_name,true);
}
if(isset($_GET['wpv_view_count'])) {
//(isset($_GET['wpv_view_count']) and $query_args['paged']>1 ) ) {
$query_args['meta_query'] = array();
if($wpv_post_search_value){
$_GET['wpv_post_search']=$wpv_post_search_value;
$query_args['s'] = $wpv_post_search_value;
}else if($car_year_value){
$_GET['car_year']=$car_year_value;
$query_args['meta_query'][] = array('key'=>'car_year',
'value'=> $car_year_value,
'type'=>'CHAR',
'compare'=>'=');
}else if($car_make_value){
$_GET['car_make']=$car_make_value;
$query_args['meta_query'][] = array('key'=>'car_make',
'value'=>$car_make_value,
'type'=>'CHAR',
'compare'=>'=');
}else if($car_model_value){
$_GET['car_model']=$car_model_value;
$query_args['meta_query'][] = array('key'=>'car_model',
'value'=>$car_model_value,
'type'=>'CHAR',
'compare'=>'=');
}
}
}
// }
return $query_args;
}
Can you please confirm it works as expected:
- hidden link