Uma forma de fazer isso seria a seguinte, atualmente a index está da seguinte forma:
Dropdown
<?php $taxonomias = get_terms('localizacao'); ?>
<form class="busca-localizacao-form" action="<?= bloginfo('url'); ?>">
<div class="taxonomy-select-wrapper">
<select name="taxonomy">
<option value="">Todos os imóveis</option>
<?php foreach($taxonomias as $taxonomia) { ?>
<option value="<?= $taxonomia->slug; ?>"><?= $taxonomia->name; ?></option>
<?php } ?>
</select>
</div>
<button type="submit">Filtrar</button>
</form>
Programação
$queryTaxonomy = array_key_exists('taxonomy', $_GET);
if($queryTaxonomy) {
$taxQuery = array(
array(
'taxonomy' => 'localizacao',
'field' => 'slug',
'terms' =>$_GET['taxonomy']
)
);
}
$args = array(
'post_type' => 'imovel',
'tax_query' => $taxQuery,
'posts_per_page' => 3
);
//$args = array('post_type' => 'imovel');
$loop = new WP_Query($args);
while($loop->have_posts() ) {
//Resto do codigo omitido
}
Para fazer em lista, basta fazer isso aqui:
<?php $taxonomias = get_terms('localizacao'); ?>
<?php foreach($taxonomias as $taxonomia) { ?>
<a href="<?= bloginfo('url'); ?>/?taxonomy=<?= $taxonomia->slug; ?>"><?= $taxonomia->name; ?></a><br/>
<?php } ?>
Caso o seu Wordpress esteja configurado para trabalhar com links no formato de nome do post (admin - menu configurações - links permanentes - nome do post), você pode tentar criar uma página somente para a taxonomia de localização. Um exemplo simples:
arquivo taxonomy-localizacao
<?php
require_once('header.php');
$cidade = get_query_var('term');
?>
<main class="home-main">
<div class="container">
<h1>Bem Vindo ao Maluras!</h1>
<ul class="imoveis-listagem">
<?php
if($cidade) {
$taxQuery = array(
array(
'taxonomy' => 'localizacao',
'field' => 'slug',
'terms' =>$cidade
)
);
}
$args = array(
'post_type' => 'imovel',
'tax_query' => $taxQuery
);
$loop = new WP_Query($args);
if($loop->have_posts() ) {
while($loop->have_posts() ) {
$loop->the_post();
?>
<li class="imoveis-listagem-item">
<a href="<?php the_permalink(); ?>">
<?php the_post_thumbnail(); ?><h2><?php the_title(); ?></h2>
<p><?php the_content(); ?></p>
</a>
</li>
<?php
}
}
?>
</ul>
</div>
</main>
<?php get_footer(); ?>
Desta forma, você vai conseguir acessar os imoveis de uma determinada cidade desta forma (exemplo)
http://ENDERECO_DO_SEU_SITE_WORDPRESS/localizacao/rio-de-janeiro/
Neste caso, a lista de taxonomias ficaria da seguinte forma:
<?php $taxonomias = get_terms('localizacao'); ?>
<?php foreach($taxonomias as $taxonomia) { ?>
<a href="<?= bloginfo('url'); ?>/localizacao/<?= $taxonomia->slug; ?>"><?= $taxonomia->name; ?></a><br/>
<?php } ?>