Add post location with mile radius allowing search

I have a custom post type (CPT) called directory. Within this CPT there are taxonomies such as builder, plumber, painter etc.

I would like to be able to add a location and a distance radius where the service is available.

Example 1

A post (A) has a location of London and a mile radius of 70 miles.

If a user searches for builder in cambridge then post A will appear in the search results.

Example 2

A post (A) has a location of London and a mile radius of 70 miles.

If a user searches for builder in Liverpool then post A will not appear in the search results.

The search fields have to search a taxonomy and the distance.

I’ve looked at the below plugins but not had much luck.

https://geomywp.com/
https://en-gb.wordpress.org/plugins/business-directory-plugin/
https://locatewp.com/
https://en-gb.wordpress.org/plugins/wp-store-locator/

I think this is going down the bespoke route but if anyone can help out it will be much appreciated.

Thanks

Solutions Collecting From Web of "Add post location with mile radius allowing search"