Задать вопрос
TopdiR
@TopdiR
PHP/WordPress developer

Как вывести шаблон категории WordPress с разделением записей по годам?

Здравствуйте уважаемые юзеры Тостера!

Мне нужно вывести страницу категории WordPress в таком виде:

---2013---
Заголовок записи 7
Заголовок записи 6

---2012---
Заголовок записи 5
Заголовок записи 4
Заголовок записи 3
Заголовок записи 2

---2011---
Заголовок записи 1

Вывести заголовок и дату каждой отдельной записи - не проблема. А вот как сделать так чтобы выводился год и под ним перечень записей этого года - я не знаю.

Если кто знает как это сделать - буду благодарен за подсказку.
  • Вопрос задан
  • 3541 просмотр
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
<?php
$year = '';
if (have_posts()) : while (have_posts()) : the_post();
$current_year = get_the_date( 'Y' ); 
if ( $year != $current_year ) echo '<h4>---' . $current_year . '---</h4>';
?>
	
    <article <?php post_class() ?> id="post-<?php the_ID(); ?>">
                            
        <h2><?php the_title(); ?></h2>
                            
    </article>				
<?php
$year = $current_year;
endwhile; endif; ?>
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
записи выводятся лупом. Перед лупом инициализируете переменную $year = '';
Дальше псевдокод:
$year = '';
while ( ....  ) :
$current_year = get_the_date( 'Y' );
if ( $year != $current_year ) {
echo '<h4>---' . $current_year . '---</h4>';

// .....  
}
$year = $current_year;

endwhile;
Ответ написан
Комментировать
TopdiR
@TopdiR Автор вопроса
PHP/WordPress developer
@zelenin спасибо Вам, но что-то у меня не выходит. Видимо мои начальные знания в php дают о себе знать. Вот мой цикл (луп), который выводит заголовки:

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>		
	<article <?php post_class() ?> id="post-<?php the_ID(); ?>">
							
		<h2><?php the_title(); ?></h2>
							
	</article>				
<?php endwhile; endif; ?>

Буду очень благодарен, если поможете правильно вставить предложенный Вами псевдокод.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽