按日期订购帖子

时间:2016-04-30 15:09:27

标签: php wordpress

我继承了一个网站,该网站使用模块提供帖子,活动等。

我正在尝试编辑的模块列出了事件,这些事件应该只显示即将发生的事件并隐藏过去的事件。

目前有一些奇怪的事情,一个是它没有按日期正确排序,有一个奇怪的错误,这意味着可能在四月后出现。此外,它显示的是过去的事件。

有人可以帮我解决这个问题吗?这是代码:

<?php

extract(array(
    'events' => []
), EXTR_SKIP);

$heading = (($heading) ? $heading : 'Member Events');
?>

<div class="col-xxs-12 col-xs-6 col-md-3 isotope-item">

    <div class="panel panel-default module module-member-event">

        <div class="panel-heading">

            <a class="btn btn-default btn-sm pull-right" href="/event-listings">See All</a>
            <h3 class="panel-title"><?php echo $heading; ?></h3>

        </div>

        <div class="list-group" data-compare>

            <?php $args = array('order' => 'ASC', 'orderby' => 'date'); foreach($events as $event ): ?>

                <a href="<?php echo $event['url']; ?>" class="list-group-item">
                    <?php render_template('subtitle-with-date', array('text' => $event['title'], 'date' => $event['date'])); ?>
                </a>

            <?php endforeach; ?>

        </div>

    </div>

</div>

1 个答案:

答案 0 :(得分:0)

您的代码使用&#39; order&#39; =&GT; &#39; ASC&#39;和&#39; orderby&#39; =&gt; &#39;日期&#39;在同一个$ args数组中。这意味着您的数据按日期提取并按ASC订单显示。这就是你面对这个问题的原因。使用相同的代码只需删除&#39; order&#39; =&GT; &#39; ASC&#39;参数和您的数据将很好地显示出来。如需进一步阅读,请访问https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters