每次迭代都不显示日期函数

时间:2013-09-20 21:22:10

标签: php wordpress

我最近继承了一个工作网站。我真的不懂PHP。

下面的代码应该遍历我们的wordpress网站上的每个帖子并发布它发布的日期。

        <?php while (have_posts()) : the_post(); ?>
            <li>
                <a href="<?php the_permalink() ?>" rel="bookmark"><h3><?php the_title(); ?></h3></a>
                <span class="the_date">Posted: <?php the_date() ?></span>
                <?php the_excerpt(); ?>                     
            </li>            
        <?php endwhile; ?>

它不太有效。它会这样做,但对于在同一天登陆的帖子,它不会发布日期:

enter image description here

如何获取每次迭代显示的日期?

2 个答案:

答案 0 :(得分:4)

来自the docs

  

特别注意:当在同一天发布的页面上有多个帖子时,the_date()仅显示第一个帖子的日期(即the_date()的第一个实例) 。要重复在同一天发布的帖子的日期,您应使用模板标记the_time()get_the_date()(自3.0起)date-specific format string

答案 1 :(得分:0)

<?php while (have_posts()) : the_post(); ?>
    <li>
        <h3><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h3>
        <span class="the_date">Posted: <?php echo !empty(get_the_date()) ? get_the_date() : date('d/m/Y'); ?></span>
            <?php the_excerpt(); ?>                     
    </li>            
<?php endwhile; ?>

如果get_the_date()不可用,则会在今天的日期添加回退。此外,我已经格式化了HTML,因为不应该在锚标记中使用h3标记。