У меня есть собственный тип записи, который называется eguide_landing. Для этого я создал собственную страницу архива, где я делаю циклический просмотр CPT и показываю их, разбитые на годы. Это показывает красиво.
Теперь я хочу создать виджет на боковой панели, который показывает все годы в виде гиперссылок, и при нажатии он перезагружает страницу, показывающую сообщения CPT ТОЛЬКО с того года. Так что, если бы я нажал 2018, он отобразил бы все сообщения CPT только в 2018 году. Я не могу понять, как создать код, который тянет все годы, отображает их в виде ссылок, а затем по щелчку показывает дизайн страницы архива, но только с этим годом.
Вот код для страницы архива:
<?php
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
$loop = new WP_Query( array( 'post_type' => 'eguide_landing', 'paged' => $paged, 'posts_per_page' => 12 ) );
if ( $loop->have_posts() ) :
//Display the years as headers
$current_year = get_the_time('Y');
echo '<h2 class="current-year">'.$current_year.'</h2>';
while ( $loop->have_posts() ) : $loop->the_post();
$this_year = get_the_time('Y');
if( $this_year!=$current_year ):
$current_year = $this_year;
echo '<h2 class="current-year">'.$current_year.'</h2>';
endif;?>
<a href="<?php the_permalink();?>">
<div class="eguide-single">
<div class="left-columns">
<div class="eguide-featured" style="background-image:url('<?php the_post_thumbnail_url();?>');"></div>
</div>
<div class="right-columns">
<h2 style="margin-bottom:0;"><?php the_title();?></h2>
<small><?php the_date();?></small>
<?php the_excerpt();?>
</div>
</div>
</a>
<?php endwhile;
// Render the Avada pagination
endif;
$pagination = fusion_pagination( $loop->max_num_pages, $loop );
echo $pagination;
wp_reset_postdata(); ?>