Не работает фильтр, использую плагин pods, произвольные типы записи.
<?php
/*
Template Name: Horses
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
$filter = $_GET;
//var_dump($filter);
$countries = get_terms([
'taxonomy' => 'strana',
'hide_empty' => false,
]);
$ages = get_terms([
'taxonomy' => 'vozrast',
'hide_empty' => false,
]);
get_header(); ?>
<?php if ( astra_page_layout() == 'left-sidebar' ) : ?>
<?php get_sidebar(); ?>
<?php endif ?>
<div id="primary" <?php astra_primary_class(); ?>>
<h3>Лошади</h3>
<p></p>
<div class="form_wrapper" style="padding: 20px">
<form>
<label>Кличка</label>
<input type="text" name="hn" style="width: 350px;"/>
<label>Страна</label>
<select name="country">
<option value="0">Все</option>
<?php foreach($countries as $country) { ?>
<option value="<?php echo $country->term_id; ?>"><?php echo $country->name; ?></option>
<?php } ?>
</select>
<label>Пол</label>
<select name="sex">
<option value="0">Любой</option>
<option value="name">Жеребец</option>
<option value="age">Кобыла</option>
</select>
<label>Возраст</label>
<select name="age">
<option value="0">Любой</option>
<?php foreach($ages as $age) { ?>
<option value="<?php echo $age->term_id; ?>"><?php echo $age->name; ?></option>
<?php } ?>
</select>
<br>
<label>Сортировать по </label>
<select name="sort_type">
<option value="name">Кличка</option>
<option value="age">Возраст</option>
<option value="sex">Пол</option>
<option value="country">Страна</option>
</select>
<label>Порядок сортировки </label>
<select name="sort_order">
<option value="name">По возрастанию</option>
<option value="age">По убыванию</option>
</select>
<br>
<button type="submit">Фильтр</button>
</form>
</div>
<div class="form_wrapper" style="padding: 20px;">
<?php
$args = array(
'post_type' => 'horse',
'publish' => true,
//'paged' => get_query_var('paged'),
);
query_posts($args);
if ( have_posts() ) { ?>
<table>
<thead>
<tr>
<th>Кличка</th>
<th>Возраст</th>
<th>Пол</th>
<th>Отец / Мать</th>
<th>Страна</th>
</tr>
</thead>
<tbody>
<?php
while( have_posts() ){
the_post();
?>
<tr>
<td><a href="<?php echo the_permalink(); ?>"><?php the_title(); ?></a></td>
<td>
<?php
$terms = get_the_terms( $post->ID, 'vozrast' );
if($terms) {
echo $terms[0]->name;
}
?>
</td>
<td>
<?php
$terms = get_the_terms( $post->ID, 'pol' );
if($terms) {
echo $terms[0]->name;
}
?>
</td>
<td>
<?php $father =get_post_meta($post->ID, 'father_horse', true) ;
if(isset($father['post_title'])){
echo '<a href="'.get_permalink($father['ID']).'">'.$father['post_title'].'</a>';
}
?>
/
<?php $mother = get_post_meta($post->ID, 'mother_horse', true);
if(isset($mother['post_title'])) {
echo '<a href="'.get_permalink($mother['ID']).'">'.$mother['post_title'].'</a>';
}
?>
</td>
<td>
<?php
$terms = get_the_terms( $post->ID, 'strana' );
if($terms) {
echo $terms[0]->name;
}
?>
</td>
</tr>
<?php } ?>
</tbody>
</table>
<?php } else {
echo "<h2>Записей нет.</h2>";
}
?>
</div>
</div><!-- #primary -->
<?php if ( astra_page_layout() == 'right-sidebar' ) : ?>
<?php get_sidebar(); ?>
<?php endif ?>
<?php get_footer(); ?>
Что тут не так? Почему фильтр не работает? Как можно сделать так что бы обновлялась только таблица а не вся страница и + добавить автодобавление списка в строку кличка