Мне нужно вытащить дату публикации поста, чтобы сделать пост пост автоматически истекающим. Дело в том, что я не могу получить правильную дату публикации.
Вот мой код:
global $wpdb;
$post_ids = $wpdb->get_results( "SELECT ID FROM $wpdb->posts WHERE post_status ='publish'" );
foreach($post_ids as $id){
$postdate = get_the_date("Y-m-d",$id ); //here is what I can figure out
.......
......etc
}
Когда я повторяю $ postdate, получаю неправильную дату. Не дата, которая существует в таблице wp_posts.
Как я могу получить дату правильно?
get_the_time
правильная функция для использования здесь.get_posts
а затем, если вы хотите извлечь только идентификаторы, используйтеwp_list_pluck
Некоторые современные подвиги
Решение первое
Решение второе
источник
Для этого вы можете использовать get_post () или get_post_field () , оба работают вне цикла.
Полный список значений, возвращаемых get_post:
источник
попробуй вот так
редактировать
get_the_time Возвращает время текущей записи для использования в PHP. Это не отображает время. Чтобы отобразить время публикации, используйте the_time (). Этот тег должен использоваться в Цикле.
get_the_date Тег шаблона get_the_date извлекает дату написания текущей записи $. В отличие от the_date () этот тег всегда будет возвращать дату. Изменить вывод с помощью фильтра get_the_date.
Я что-то здесь упускаю?
источник