主页上的博客帖子显示页面发布日期而不是发布发布日期

时间:2020-09-08 作者:SurreyCreative

我正在自定义主页模板上显示博客中的最新帖子,但帖子发布的日期是主页发布的日期,而不是帖子发布的日期。我怎样才能解决这个问题。这是我的密码。

<?php 
        $args = array(
        \'posts_per_page\' => 1,
        \'order\' => \'DESC\'
        );

        $rp = new WP_Query( $args );
        $post_date = get_the_time( \'d-m-y\', $post->ID );

        if($rp->have_posts()) :
        while($rp->have_posts()) : $rp->the_post();
        echo \'<p class="authDate">Surrey Creative | \';
        echo $post_date;
        echo \'</p>\';
        echo \'<h3>\';
        the_title();
        echo \'</h3>\';
        echo \'<div class="snippet">\';
        the_excerpt();
        echo \'</div>\';
        echo \'<a href="\'; 
        echo esc_url( get_the_permalink( $post_id ) );
        echo \'" class="read-more button link">\';
        echo \'Read More <i class="fa fa-angle-right"></i></a>\';                

        endwhile;
        wp_reset_postdata(); 
        endif;
    ?>

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

这是预期的,此代码获取当前帖子的日期:

$post_date = get_the_time( \'d-m-y\', $post->ID );
但是您还没有进入post循环,因此当前的post就是您所在的页面。the_post 是设置当前帖子的内容,因此您需要在循环内部而不是外部调用它。

还有一些其他问题:

使用自动缩进代码的编辑器,尤其是在共享代码时,缩进可以避免一整组错误echo esc_url( get_the_permalink( $post_id ) );$post_id 它从来没有定义过,只是从稀薄的空气中抽出来的else 如果没有找到帖子,那么它将是空白的

相关推荐

Get posts for each user

对于学生项目,我使用WordPress和木材(树枝)+ACF在这个项目中,我创建了3种自定义帖子类型:dissertation, subject-imposed 和subject-free每个学生只能按自定义帖子类型创建一篇帖子(我为此创建了一个限制)。但现在我想显示一个列表,列出每个学生的名字和他们的3篇帖子。这样的列表:Nicolas Mapple<自定义职位类型的标题dissertation + 自定义帖子类型名称+图像(ACF字段)自定义帖子类型的标题subject-imposed + 自定