Как сортировать по таксономии с помощью вкладок без архива ?.Просто перезагрузите страницу (или без), чтобы отфильтровать посты по таксономии.
HTML:
<ul class="portfolio-sorting">
<li><a href="" class="active">All Rooms</a></li>
<li><a href="">Entertainment</a></li>
<li><a href="">Restaurants</a></li>
<li><a href="">Sport</a></li>
<li><a href="">Service</a></li>
</ul>
PHP (цикл WordPress):
<?php $gallerys_posts = new WP_Query($args); //The argument $args must be passed [function set_arges]
wp_reset_query();
if( $gallerys_posts->have_posts() ) :
while ( $gallerys_posts->have_posts() ) :
$gallerys_posts->the_post(); ?>
<div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 shuffle-item filtered">
<div class="portfolio-item">
<a href="<?php echo get_permalink(get_the_id());?>">
<?php if ( get_the_post_thumbnail(get_the_id()) ) { ?>
<?php echo get_the_post_thumbnail( get_the_id(), array(620, 423 )); ?>
<?php } ?>
<div class="portfolio-overlay">
<div class="caption">
<?php echo get_title(); ?>
<span>
<?php echo get_the_content(); ?>
</span>
</div>
</div>
</a>
</div>
</div>
<?php endwhile; endif; wp_reset_query();?>
PHP (возврат)$ args для цикла):
<?php function set_arges($type_filter = 'all') {
switch ($type_filter) {
case 'all':
$args= array(
'post_type' => 'gallerys',
'posts_per_page' => '-1',
'tax_query' => array(
array(
'taxonomy' => 'gallerys_type',
'field' => 'slug',
'terms' => 'all-rooms'
)
)
);
return $args;
break;
case 'entertainment':
$args= array(
'post_type' => 'gallerys',
'posts_per_page' => '-1',
'tax_query' => array(
array(
'taxonomy' => 'gallerys_type',
'field' => 'slug',
'terms' => 'entertainment'
)
)
);
return $args;
break;
case 'restaurants':
$args= array(
'post_type' => 'gallerys',
'posts_per_page' => '-1',
'tax_query' => array(
array(
'taxonomy' => 'gallerys_type',
'field' => 'slug',
'terms' => 'restaurants'
)
)
);
return $args;
break;
case 'sport':
$args= array(
'post_type' => 'gallerys',
'posts_per_page' => '-1',
'tax_query' => array(
array(
'taxonomy' => 'gallerys_type',
'field' => 'slug',
'terms' => 'sport'
)
)
);
return $args;
break;
case 'services':
$args= array(
'post_type' => 'gallerys',
'posts_per_page' => '-1',
'tax_query' => array(
array(
'taxonomy' => 'gallerys_type',
'field' => 'slug',
'terms' => 'services'
)
)
);
return $args;
break;
}
}
По умолчанию $ filter_type принимает значения 'all', и отображаются все сообщения, но при нажатии на кнопку вкладок значение должно измениться, сообщения также должны измениться.Как это можно реализовать?Большое спасибо !!!