Як зробити вивід лише актуальних анонсів у WordPress

У мене є багато сайтів, на яких публікуються анонси певних подій. Зазвичай, вони виводяться на головній окремим блоком. Все добре, окрім того, що з часом, коли анонс уже неактуальний, а нових немає, він продовжує “висіти”…

Треба було вирішити дві проблеми:
1. Як виводити лише актуальні анонси (наприклад, якщо анонсована подія відбулася 12 числа такого-то місяця-року, то потрібно щоб 13-го числа цей анонс без всякого втручання адміністратора перестав відображатися)
2. Як зробити так, щоб у випадку, коли актуальні анонси відсутні, не відображався пустий блок з оформленням, що використовується для показу тих-таки анонсів.

Нарешті моя не зовсім програмістська голова “дозріла” (не без штурму форумів) для вирішення подібних задач. Отже, в якості нотатки для самого себе та з надією, що це рішення згодиться ще комусь, ділюся кодом:

ID, 'aexp', true) ) ); ?>
= date('Y-m-d')) { ?>

<?php // виводимо необхідну кількість анонсів (в даному випадку - 2)
if ($i



<?php
// запускаємо формлення блоку ($block_do;) та інші атрибути перед першим постом, якщо є хоча б один
if ($i == 1) { echo $block_do;
echo &#039;<div class="block"><h1><a href="http://www.site.org.ua/category/anonsy/">Анонси</a></h1></div><hr>';} ?&gt;



&lt;?php echo &#039;<div class="main-posts">';?&gt;
<div class="maintop">
&lt;?php echo&#039;<h1>';
        echo '<a href="';
        the_permalink() ;
        echo '">';
        the_title();
        echo '</a>';
echo '</h1>'; ?&gt;
<p class="date"></p></div><!-- div class="maintop" -->

<div class="maincontent">
post_excerpt != '')  
    {
        the_excerpt();
        echo '<p><a href="';
        the_permalink();
        echo' " class="more">[Далі...]</a></p>';
    }
    else the_content('[Далі...]');
    wp_link_pages();
   
?&gt;
</div> <!-- div class="maincontent" -->




<div class="mainbottom"></div> <!-- div class="mainbottom" -->
</div><!-- div class=main-posts или main-posts-single -->

 0) { echo $block_posle;}
?&gt;