使用PHP集成WordPress最新博客文章时的日期显示异常问题
解决WordPress中
the_date()只显示一个日期的问题 嘿,这个问题我刚学WordPress的时候也踩过一模一样的坑!咱们先把问题根源搞清楚:
为啥会出现这种情况?
WordPress的the_date()函数有个特殊的设计逻辑——如果多篇文章的发布日期相同,它只会在第一篇符合条件的文章里输出日期,后续同日期的文章会自动跳过输出。更关键的是,哪怕是在同一篇文章的模板里多次调用the_date(),第二次及之后的调用也会因为已经输出过该日期而被跳过,这就是你删了日的代码才会显示月的核心原因。
直接可用的解决方案:改用get_the_date()
想要在同一篇文章里多次输出不同格式的日期(比如日在上、月在下),你需要换成get_the_date()函数。它和the_date()的核心区别是:
the_date():直接输出日期,自带同日期去重逻辑get_the_date():返回日期字符串,需要手动用echo输出,没有任何去重限制
把你的代码改成下面这样就能解决问题:
<div class="col-lg-2"> <div class="col-lg-12"> <h4><?php echo get_the_date('d'); ?></h4> </div> <div class="col-lg-12"> <h4><?php echo get_the_date('M'); ?></h4> </div> </div>
额外小提醒
如果你是在循环里展示最新3篇文章,万一其中有两篇是同一天发布的,用the_date()的话第二篇的日期会直接消失,这时候同样推荐用get_the_date()来确保每篇文章都能正常显示完整日期~
内容的提问来源于stack exchange,提问作者Tyler Brady
相关产品推荐
相关产品推荐

