How to stop wp_postmeta from being called on archive and search pages?
add_filter(‘pre_get_posts’, ‘customize_query’); function customize_query($query) { if($query->is_main_query() && ($query->is_search() || $query->is_archive()) { $query->set(‘update_post_meta_cache’, false); $query->set(‘update_post_term_cache’, false); } } Then wordpress will make 2 less queries for those pages & then you can use the $wpdb object to write custom queries.