Есть ли какой-либо способ разрешить пользователям доступ к контенту до его публикации?
У меня есть блог, и я ежедневно публикую сообщения, и я хотел бы, чтобы пользователи могли получить доступ к сообщениям за один день до их публикации. Как я могу это сделать?
3 answers
Вы можете использовать это в файле шаблона:
$tomr = getdate(time()+86400); //utc=gmt time in seconds, add 24 hours = 86400 seconds
$args = array(
'post_status' => 'future',
'date_query' => array(
array(
'year' => $tomr['year'],
'month' => $tomr['mon'],
'day' => $tomr['mday'],
'column' => 'post_date_gmt' //since we are using the gmt timestamp
),
),
);
$query = new WP_Query($args);
if($query->have_posts()) {
while($query->have_posts()) {
$query->the_post();
//display post data
}
//restore original post data if it's required after this loop
wp_reset_postdata();
} else {
//no posts found
}
Вот несколько плагинов, которые могут быть вам полезны:
Я предпочитаю WP-draftsforfriends, поскольку у него есть страница администратора для контроля истечения срока действия и продления на более длительные периоды времени. Также приятно видеть все ваши общедоступные ссылки в одной области, а не в общедоступном предварительном просмотре публикации, который контролируется только на экране редактирования публикации.
Вы можете просто добавить сообщение в администраторе и дать ссылку на сообщение пользователю, например, предположим, что вы хотите опубликовать сообщение завтра, затем просто создайте сообщение и укажите дату публикации на завтра. Так что пост будет публично показан завтра. но вы можете поделиться ссылкой на этот пост с кем угодно.