Как отформатировать дату публикации в Wordpress?

У меня есть боковая панель, где я хочу показывать последние сообщения. Сейчас он показывает название, дату и выдержку. Дата показывает время, от которого я хочу избавиться. Я показываю дату, используя это: $recent [ "post_date" ]

 <?php
$args = array( 'numberposts' => '3' );
$recent_posts = wp_get_recent_posts( $args );
foreach( $recent_posts as $recent ){
    echo '<li id="sidebar_text"><b>'.$recent["post_title"].'</b></li><li style="font-size:12px">'.$recent["post_date"].'</li><li><i style="font-size:15px">'.$recent["post_excerpt"].'</i><a href="'.get_permalink($recent["ID"]).'"> Read   More</a></li>';
     }
 ?>

Показывает дату: 2013-08-11 18:29:04, и мне хотелось бы, чтобы это было так 8-11-2013 и без времени. Спасибо заранее.

Ответ 1

date('n-j-Y', strtotime($recent['post_date']));

Форматирует его так, как вы хотите. Просто замените $recent['post_date'] в своем цикле на это.

Ответ 2

Хотя ответ Syfaro верен, для этого рекомендуется использовать собственную функцию WordPress.

get_the_date

По умолчанию используется формат, установленный в настройках администратора WordPress ("Настройки" → "Общие"), что дает более доступное решение для будущего редактирования - особенно полезно, если вы перемещаете код на нескольких сайтах, или, что более важно, если вы публикуете его публично.

Кроме того, не забудьте скрыть вывод - посмотрите esc_html и esc_html_e

Ответ 3

Замените $recent["post_date"] на mysql2date('n-j-Y', $recent['post_date']).

Ответ 4

date_i18n('l d/m/Y \à\s g:i', strtotime($item['time']))