Как снять пост с «публикации» в определенное время? Опять custom fields
[ ←Вернуться к стандартному виду ]
Кусочек кода, найденного на форуме wordpress.org, позволяет модифицировать цикл (Loop) так, что после определённой даты определенная запись в цикле не показывается, для каждой записи можно задать индивидуальную дату «снятия с публикации» в ленте постов. Фактически запись существует по своей ссылке, т.е. статус у неё не меняется и остается как и прежде «опубликовано», просто в конкретной ленте постов она не выводится.
Что значит «конкретная лента постов»? Например, в теме default несколько файлов-шаблонов с циклом: index.php
основной шаблон (используется для главной страницы), archive.php
— шаблон для вывода рубрик и архивов и т.д.
В свете таких особенностей этого способа использовать его можно, опять же, для отображения записей на главной странице с определённым концом срока публикации.
Для этого создаем у записи произвольное поле expiration
и в значение ему пишем дату окончания показа в таком виде: гггг/мм/дд
, пример 2008/11/05
Итак, находим начало цикла:
и следом дописываем:
$currentdate ) { ?>
затем находим в конце цикла endwhile
и перед ним дописываем <?php } ?>
, получаем:
Источник: http://wordpress.org/support/topic/205765
Также нашла ещё один вариант, где задается не только дата, но и время вплоть до секунд, недостаток (достоинство?) его в том, что записи, у которых нет произвольного поля expiration
в цикле не выводятся совсем: How to: Set post expiration date/time on your WordPress blog
Вопрос не совсем по теме...Но может подскажите как сделать так чтобы при изменении ссылки поста, он не воспринимался как новый, и не производилась рассылка RSS по почте. Через фидбернер это реализовано у меня.
Где то я об этом уже читала
а есть такая реализация или нет что позволит изменить статус поста на черновик чтоб полностью снять его с публикации.
chudoff.a
Есть: плагин post-expirator