This approach isn’t very scalable if you only need it for locations combined with property types. We are planning to add this feature in the future.
If this is urgent for you, here’s what I’d recommend:
Use Geolocation with Regions: This way, locations and all possible areas will be automatically generated based on where you actually have listings. You won’t have empty location pages, only ones where listings exist.
Mark your Property Type attribute as Public: If you already have a property type attribute (like “Villa” in your example), marking it as Public will create SEO-friendly pages like /listing-attributename/villa.
Generate pages for the intersection of Regions and Property Types: You could either use Categories for this purpose, or if you’re already using Categories, create a Select attribute instead. This is the shortest path to achieving what you’re looking for, and it’s likely how we’ll implement this feature in future updates as well.
Let me know if you need more guidance on setting this up.
Can you please help me with Option 3? How can I generate pages for the intersection of Regions and Property Types? If this is possible, it will solve my problem to a great extent
Unfortunately there’s no simple code snippet for this, but I recommend using the add_rewrite_rule WordPress function add_rewrite_rule() – Function | Developer.WordPress.org to register the URL route like “/properties/{type}-in-{region}”, and when this URL is visited, you can fetch the type and region from the URL, filter and show the corresponding listings on a page (this can be done by using the existing listings template or blocks).
Yes, we plan to make the filters form available as a block, but unfortunately there’s no way to fully re-create the Listings page layout outside of the template context (for example, pagination will not be availalble as a block).
I recommend using the add_rewrite_rule approach as with a custom post type, you’d have to generate a post for every property type / location combo. With a custom rewrite rule, you can simply fetch the intended location / type from the URL and show the corresponding listings (by re-using the Listings page template).
We’ll also try to deliver this feature as soon as possible, we understand that it’s important for SEO.