You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Event post type如何在主页面展示事件日期而非文章发布日期

方案1:修改主题列表模板(可控性最高)

找到你主题控制主页文章列表输出的模板文件(通常为index.php、home.php),定位到原有输出发布日期的代码段(一般调用the_date()或get_the_date()函数),替换为以下逻辑即可:

// 仅对event自定义文章类型替换为举办日期
$event_date = get_post_meta( get_the_ID(), 'event_date', true );
if ( get_post_type() === 'event' && !empty($event_date) ) {
    // 日期格式可根据主题原有显示规则调整
    echo date_i18n( 'Y年m月d日', strtotime( $event_date ) );
} else {
    // 普通文章保留发布日期输出
    the_date();
}
方案2:使用过滤器动态替换(无需修改模板文件)

如果不想改动主题模板,可以直接在主题的functions.php文件中添加如下代码,通过WordPress内置的过滤器自动替换Event类型文章的日期输出:

add_filter( 'get_the_date', 'custom_event_date_replace', 10, 3 );
function custom_event_date_replace( $date, $format, $post ) {
    // 判断当前文章为event类型且存在自定义举办日期
    if ( $post->post_type === 'event' ) {
        $event_date = get_post_meta( $post->ID, 'event_date', true );
        if ( !empty($event_date) ) {
            return date_i18n( $format, strtotime( $event_date ) );
        }
    }
    return $date;
}
配置说明
  • 代码中的event需替换为你自定义文章类型的别名,和注册时填写的Post Type Key完全一致即可
  • 代码中的event_date需替换为你实际存储事件举办日期的自定义字段键名,如果你使用ACF等自定义字段插件创建字段,对应填写你设置的字段名即可
  • 如果你使用的是WordPress块主题,上述过滤器方案依然可以正常生效,无需调整站点编辑器的模板设置

内容的提问来源于stack exchange,提问作者Santiago Romero

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 18:03:03