Интересный вывод записей

Здравствуйте!
Есть ряд мероприятий, я делаю для каждого свою запись в определенной рубрике.
Мероприятия выводятся в столбцах слева направо: 22 мая, 25 мая, 28 мая

Вопрос: как вывести 3 последних события и отсортировать их по возрастанию.

То есть, если я вывожу просто 3, то они идут наоборот 28 мая, 25 мая, 22 мая.
Если я сортирую наоборот, то выводятся события, которые уже давно прошли.

Пока нашел такое решение:

<?php 
        function filter_where($where = '') {  
          //posts in the last 30 days  
          $where .= " AND post_date > '" . date('Y-m-d', strtotime('-3 days')) . "'";  
          return $where;  
        }  
        add_filter('posts_where', 'filter_where');  
        query_posts("posts_per_page=3&order=ASC"); ?>
        <?php while ( have_posts() ) : the_post(); ?>
            <div class="span3">
                <p><span class="label label-warning"><?php echo get_post_meta($post->ID, 'Дата', true); ?></span></p>
                <h3><?php the_title(); ?></h3>
                <p><?php the_content(); ?></p>
            </div>
        <?php endwhile; wp_reset_query(); ?>

Но проблема в том, что события не всегда каждый день, а значит будет такой день, когда будет выводится 1-2 события из-за окна.

Нет идей?

Возможно, есть способ сортировки внутри сортировки?

Можно в основном цикле получить ID материалов и их даты, скинуть их в связанный массив и отсортировать его по дате. После через id постов вывести их. Но это так в лоб… Может у ВП все же есть свои средства ><

Попробуй вывести просто три по убыванию, но внутри лупа оберни каждое мероприятие в див, которому назначь float:right. Тогда первым выведется мероприятие за 28 мая и убежит направо. Следом выведется за 25 мая, и тоже убежит направо, но не дальше первого, таким образом визуально будет выглядеть левее. Ну и т.д.

Anonymous
Отправить
Ответ на: