首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从woocommerce产品对象中找到相关的learndash课程id?

如何从woocommerce产品对象中找到相关的learndash课程id?
EN

Stack Overflow用户
提问于 2020-09-16 22:14:41
回答 1查看 629关注 0票数 0

我将woocommerce与LearnDash集成在一起。现在,我正在尝试从woocommerce产品对象或任何其他方式(通过woocommerce产品id)获取所选课程(相关课程)。必须有一种购买产品的方式来解锁课程。就是找不到。

有人能帮上忙吗?

EN

回答 1

Stack Overflow用户

发布于 2020-09-19 05:21:45

相关课程数据以post_meta格式存储在WooCommerce产品中。

当render_course_selector()函数用'_related_courses‘is it's key included in the $_POST on see the product更新post meta时,您可以在第150行看到这一点。

对于我的用例,我需要在发送的电子邮件中获得它,所以我这样做:

代码语言:javascript
复制
function my_plugin_add_course_link_to_emails($item_id, $item, $order, $plain_text)
{
    $html = '<div class="email-course-link">';
    $related_courses = get_post_meta($item->get_product_id(), '_related_course');
    foreach ($related_courses as $related_course) {
        $id = $related_course[0];
        $url = learndash_get_course_url($id);
        $html .= '<a href="' . $url . '">Course Link</a>';
    }
    $html .= '</div>';
    echo $html;
}
add_action('woocommerce_order_item_meta_start', 'my_plugin_add_course_link_to_emails', 10, 4);

回答你的问题的神奇之道是这一条:

代码语言:javascript
复制
$related_courses = get_post_meta($item->get_product_id(), '_related_course');

上面的任何变体都应该能帮到你。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63921976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档