Я хочу показывать посты WordPress в течение ограниченного времени (1 или 2 недели) после их публикации. На время я создал настраиваемое поле (advertorial_duur
) который имеет либо значение 1
(1 неделя) или 2
(2 недели).
Он отображает некоторые сообщения уже, но не в соответствии с продолжительностью, которую я установил в сообщениях. Я не могу понять это точно, но я думаю, что теперь он отображает сообщения всего за 1 неделю, независимо от значения настраиваемого поля.
До сих пор я создал этот код:
<ul class="advertorials">
<?php
$advertorials = new WP_Query( 'cat=18' );
while ($advertorials->have_posts()) :
$advertorials->the_post();
if ( (current_time(timestamp) - get_the_time('U') - (get_settings('gmt_offset') * 3600) ) < ((int)get_post_custom_values( 'advertorial_duur' ))*(7*60*60*24))
{
?>
<li><a href="<?php the_permalink(); ?>" title="Lees meer over: <?php the_title(); ?>">
<div class="thumb"><?php the_post_thumbnail('thumbnail') ?></div>
<p class="title"><?php the_title(); ?></p>
<div class="clr"></div></a>
</li>
<?php } ?>
<?php endwhile; ?>
<?php wp_reset_query(); ?>
</ul>
Вы должны попробовать плагин Постэкспиратор который позволяет вам установить дату истечения срока действия, способ истечения срока действия и категорию срока действия для сообщения / страницы. Но это не будет использовать значение настраиваемого поля.
Других решений пока нет …