The standard property list page file has the code in the property_list.php. The first thing you need to know is that we built the property list using the wp_query instruction from wordpress. If you plan to change the property list you need to be familiar with how the wp_query works. Detailed explanations can be found here : https://codex.wordpress.org/Class_Reference/WP_Query
In the property list file we load the settings you made in the wordpress admin (like category, city etc) . We do this at line 34
$current_adv_filter_search_action = get_post_meta ( $post->ID, 'adv_filter_search_action', true);
$current_adv_filter_search_category = get_post_meta ( $post->ID, 'adv_filter_search_category', true);
$current_adv_filter_area = get_post_meta ( $post->ID, 'current_adv_filter_area', true);
$current_adv_filter_city = get_post_meta ( $post->ID, 'current_adv_filter_city', true);
$show_featured_only = get_post_meta($post->ID, 'show_featured_only', true);
$show_filter_area = get_post_meta($post->ID, 'show_filter_area', true);
After that we start composing the taxonomy array that will be used in the arguments array we will pass to wp_query
If we want to show only featured properties we use this code
if($show_featured_only=='yes'){
$compare_array=array();
$compare_array['key'] = 'prop_featured';
$compare_array['value'] = 1;
$compare_array['type'] = 'numeric';
$compare_array['compare'] = '=';
$meta_query[] = $compare_array;
}
For the order of the properties we use the switch block that starts around line 150
switch ($order){
case 1:
In the end we create the arguments array at line 198 and then load the template normal_map_core where we do the actual wp_query and display the properties list.
$args = array(
'post_type' => 'estate_property',
'post_status' => 'publish',
'paged' => $paged,
'posts_per_page' => $prop_no,
'orderby' => 'meta_value_num',
'meta_key' => $meta_order,
'order' => $meta_directions,
'meta_query' => $meta_query,
'tax_query' => array(
'relation' => 'AND',
$categ_array,
$action_array,
$city_array,
$area_array
)
);