返回

WordPress 和 WooCommerce 中如何显示免费和付费视频,提升在线课程体验?

php

在 WordPress 和 WooCommerce 中显示免费和付费视频

简介

在 WordPress 和 WooCommerce 中添加视频可以为你的在线课程或产品带来吸引力,提升互动性。本指南将详细介绍如何显示免费和付费视频,并根据其状态提供相应的观看和下载链接。

步骤指南

准备工作

  • 安装并激活 WordPress 和 WooCommerce 插件。
  • 安装一个自定义字段插件(例如 Advanced Custom Fields)以创建自定义视频信息字段。

创建自定义字段

使用插件创建一个名为“课程会话组”的自定义字段组,并包含以下字段:

  • 课程会话标题(文本)
  • 是否免费(选择,选项:免费、付费)
  • 会话(可重复的文本字段,用于存储视频标题)
  • 下载链接(可重复的 URL 字段,用于存储下载链接)
  • 视频时间(可重复的文本字段,用于存储视频时长)

显示视频

在你的课程内容模板中,添加以下代码以显示视频信息:

// 检查是否设置了课程会话组
if (get_post_meta(get_the_ID(), 'paradox_course_sessions_group', true)) {
    // 输出视频信息
    echo '<div class="course_sessions">';
    foreach (get_post_meta(get_the_ID(), 'paradox_course_sessions_group', true) as $course_session) {
        // 检查视频是否是免费的
        $is_free = isset($course_session['paradox_is_free_lessons']) ? $course_session['paradox_is_free_lessons'] : false;

        // 显示视频标题和时间
        echo '<div class="course_sessions_item">';
        echo '<div class="head_inner_accordion">';
        echo '<span class="title_icon"><span class="sec_number">' . $counter . '</span>' . $course_session['paradox_menu_lessons'] . '</span>';
        echo '<span class="rcourse_time">' . $course_session['paradox_duration_time_lessons'] . '<i class="far fa-clock"></i></span>';
        echo '</div>';

        // 根据视频类型显示观看和下载链接
        if ($is_free) {
            // 免费视频
            echo '<a href="' . $course_session['paradox_link_lessons'] . '" class="video_watch_link">观看视频</a>';
            echo '<a href="' . $course_session['paradox_download_link_lessons'] . '" class="video_download_link">下载视频</a>';
        } else {
            // 付费视频
            $product_id = $course_session['paradox_product_id_lessons'];
            $product = wc_get_product($product_id);
            if ($product) {
                // 检查用户是否购买了该视频
                $is_purchased = wc_customer_bought_product($current_user->user_email, $current_user->ID, $product->get_id());

                if ($is_purchased) {
                    // 已购买视频
                    echo '<a href="' . $course_session['paradox_link_lessons'] . '" class="video_watch_link">观看视频</a>';
                    echo '<a href="' . $course_session['paradox_download_link_lessons'] . '" class="video_download_link">下载视频</a>';
                } else {
                    // 未购买视频
                    echo '<a href="' . $product->get_permalink() . '" class="video_purchase_link">购买视频</a>';
                }
            }
        }

        echo '</div>';
        $counter++;
    }
    echo '</div>';
}

样式调整

根据需要调整 CSS 代码以自定义视频的外观。

常见问题解答

  • 付费视频的观看链接在哪里? 付费视频的观看链接仅在购买视频后显示。
  • 下载链接只适用于免费视频吗? 不,下载链接也适用于付费视频,前提是用户已购买视频。
  • 如何在代码中设置产品 ID? 在创建自定义字段时,添加一个名为“视频产品 ID”的字段,并在其中输入产品的 ID。
  • 是否可以使用其他自定义字段插件? 是的,可以使用其他自定义字段插件,但需要根据插件的具体用法进行调整。
  • 如何在 WordPress 后台中管理视频信息? 使用自定义字段插件的界面添加、编辑和删除视频信息。

总结

通过遵循本指南中的步骤,你可以在 WordPress 和 WooCommerce 主题中轻松地显示和管理免费和付费视频。通过提供根据视频状态进行相应显示的功能,你可以为你的在线课程或产品带来更加丰富的学习体验。