У меня проблема с отображением событий в правильном порядке в WordPress. Я думаю, что проблема в том, что WordPress обрабатывает дату как строку и упорядочивает ее по дням, потому что она в британском формате даты.
Цель состоит в том, чтобы отобразить список будущих событий с самым последним событием в верхней части списка. Но я должен использовать британский формат даты: дд / мм / гггг.
Нужно ли возвращаться к чертежной доске или есть способ конвертации даты для достижения нужного мне результата?
Заранее спасибо:)
<ul>
<?php // Get today's date in the right format
$todaysDate = date('d/m/Y');?>
<?php query_posts('showposts=50&category_name=Training&meta_key=date&meta_compare=>=&meta_value=' . $todaysDate . '&orderby=meta_value&order=ASC'); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<li>
<h3><a href="<?php the_permalink(); ?>">
<?php the_title(); ?>
</a></h3>
<?php $getDate = get_post_meta($post->ID, 'date', TRUE);
$dateArray = explode('/', $getDate); ?>
<?php if($getDate != '') { ?>
<div class="coursedate rounded"><?php echo date('d F Y', mktime(0, 0, 0, $dateArray[1], $dateArray[0], $dateArray[2])); ?></div>
<?php } ?>
<p><?php get_clean_excerpt(140, get_the_content()); ?>...</p>
<p><strong><a class="link" href="<?php the_permalink(); ?>">For further details and booking click here</a></strong></p>
</li>
<?php endwhile; ?>
<?php else : ?>
<li>Sorry, no upcoming events!</li>
<?php endif; ?>