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

WordPress中LearnPress课程页get_post_meta()不显示自定义字段问题

解决LearnPress课程单页无法显示自定义字段的问题

嘿,我来帮你搞定这个困扰!你已经搞定了后台自定义字段的保存,但课程前端不显示,核心原因是LearnPress的课程(lp_course)有自己的单页模板和钩子体系,和普通文章(post)的渲染逻辑不一样,直接在single.php里的代码自然不会生效。下面给你两种靠谱的解决方案:

一、用LearnPress专属钩子显示(推荐,主题更新不丢失)

LearnPress提供了很多专门用于课程页面的钩子,我们可以用钩子把自定义字段内容挂到课程页面的合适位置,不用修改模板文件:

1. 添加显示函数

把这段代码放到主题的functions.php里:

// 在课程单页显示自定义字段
function display_my_custom_course_field() {
    // 获取当前课程ID
    $course_id = get_the_ID();
    // 替换成你的自定义字段meta key(要和保存时的key完全一致!)
    $tab1_title = get_post_meta( $course_id, 'fav_tab1_title', true );
    
    // 如果字段有值,就输出
    if ( !empty( $tab1_title ) ) {
        echo '<div class="custom-course-tab1" style="margin:20px 0;padding:15px;background:#f5f5f5;">
                <h3>Tab 1 Title</h3>
                <p>' . esc_html( $tab1_title ) . '</p>
              </div>';
    }
}
// 挂到课程内容之后的钩子(你可以根据需求换其他钩子)
add_action( 'learn_press_after_single_course_summary', 'display_my_custom_course_field', 10 );

2. 可选:更换钩子位置

如果你想把内容放在其他位置,比如课程标题下方、课程信息区,这些LearnPress钩子可以选:

  • learn_press_before_single_course:课程页面最顶部
  • learn_press_single_course_summary:课程摘要区域内
  • learn_press_after_single_course:课程页面最底部

二、修改课程单页模板(适合需要高度自定义的场景)

如果你想直接修改模板布局,可以用主题覆盖插件模板的方式(避免插件更新丢失修改):

1. 找到并复制模板文件

  • 从LearnPress插件目录里找到 templates/single-course.php
  • 在你的主题目录下创建 learnpress 文件夹,把复制的single-course.php放进去

2. 在模板里添加字段代码

打开主题里的single-course.php,找到你想显示自定义字段的位置(比如课程描述之后),添加这段代码:

<?php
// 获取自定义字段值
$tab1_title = get_post_meta( get_the_ID(), 'fav_tab1_title', true );
if ( !empty( $tab1_title ) ) : ?>
<div class="custom-tab1-section">
    <h4>Tab 1 Title</h4>
    <p><?php echo esc_html( $tab1_title ); ?></p>
</div>
<?php endif; ?>

关键检查点!

别忘了确认这两点,不然可能还是显示不出来:

  • 字段保存逻辑正确:你的保存函数里要确保针对lp_course类型的课程正确保存了meta值,权限判断要用LearnPress的edit_course权限(而不是普通的edit_post)
  • meta key完全一致:获取字段时用的fav_tab1_title要和你后台输入框的name属性、保存时的key完全一样

内容的提问来源于stack exchange,提问作者Sajedul Islam Sajid

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 02:28:01