Сортировка записей на WordPress
В архиве записи выведены с помощью WP_query
<?php get_header();
if (get_query_var('paged')) {
$paged = get_query_var('paged');
} elseif (get_query_var('page')) { // applies when this page template is used as a static homepage in WP3+
$paged = get_query_var('page');
} else {
$paged = 1;
}
$post_per_page = get_option('posts_per_page');
$post_args = array(
'posts_per_page' => $post_per_page,
'orderby' => 'date',
'paged' => $paged,
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish'
);
$query = new WP_Query( $post_args );
$total = $query->found_posts;
if(is_page()) {
$max_num_pages = $query -> max_num_pages;
} else {
global $wp_query;
$query = $wp_query;
$max_num_pages = false;
}
?>
<main>
<?php get_template_part('template-parts/global/page-before-content');?>
<div class="container">
<div class="row">
<div class="col-lg-3 ">
<?php get_sidebar('blog');?>
</div>
<div class="col-lg-9 archive-content">
///это форма для сортировки записи
<form method="get" id="order">
<div class="input-field select-custom select-custom-v1">
<select name="order" onchange='this.form.submit()'>
<option value="" selected>По дате - сначала новые</option>
<option value="latest"<?=$s1?>>По дате - сначала старые</option>
<option value="count"<?=$s2?>>По популярности</option>
<option value="title"<?=$s3?>>По названию</option>
<option value="correct"<?=$s4?>>По дате изменения</option>
</select>
</div>
</form>
<?php get_template_part('templates/global/blog-before-content'); ?>
<div class="blog-container row">
<?php if($query -> have_posts()): while ($query -> have_posts()) : $query -> the_post(); ?>
<article <?php post_class('col-12 col-sm-6 col-md-4 mb-30'); ?>>
<div class="single-post-card">
<div class="blog-item">
<a href="<?php the_permalink();?>" class="thumb" rel="canonical">
<?php
$thumbnail = get_the_post_thumbnail( $post->ID, 'blog-medium');
if ($thumbnail == '') {
$thumbnail = '<img src="https://via.placeholder.com/250x250" alt="">';
}?>
<?php echo $thumbnail;?>
</a>
<div class="name"><a href="<?php the_permalink();?>"><?php the_title();?></a></div>
<div class="description d-none"><?php the_excerpt();?></div>
<p><?php echo get_the_date();?></p>
</div>
</div>
</article>
<?php endwhile; wp_reset_postdata(); else:
get_template_part('templates/content', 'none');
endif; ?>
</div>
<?php lp_pagenavi($max_num_pages);?>
</div>
</div>
</div>
<?php get_template_part('template-parts/global/page-after-content');?>
</main>
<?php get_footer();
Можно ли сделать сортировку записей по дате, тайтлу и тд?
Видел способ с while have_posts get_posts, но тут через WP_query реализовано