在视频结尾处运行WordPress功能 - video.js + WordPress

时间:2014-05-26 01:51:04

标签: javascript php jquery wordpress video.js

我试图在目前正在进行的wordpress项目中实现video.js。

虽然video.js很棒,但我仍然有点试图从我需要的功能中获取功能。

简而言之,一旦用户观看了视频,我就需要在用户的个人资料中更新要标记为“已观看”的视频。我试图通过编写挂钩到自定义字段的PHP函数来实现这一点,检查视频是否已经被观看,如果没有,则该功能将视频添加到观看视频列表中。

用户观看视频>结束时,运行我的WordPress主题中的函数functions.php

在video.js API中有一个已结束的事件。我遇到麻烦的地方就是涉及到wordpress方面。

<script type="text/javascript">

    var myPlayer = videojs("session_video");

      videojs("session_video").ready(function(){

      this.on("ended", function(){
        // RUN THE FUNCTION.
      });

    });       
</script>

1 个答案:

答案 0 :(得分:0)

<script type="text/javascript">

    var myPlayer = videojs("session_video");

      videojs("session_video").ready(function(){

      this.on("ended", function(){
            $.ajax({
                url: "test.php",
                type: "post",
                data: {action: "watched", post_id: <?=$post->ID; ?>},
                success: function(data){
                if(data == "done") {
            $("#result").html('Thanks for watching the video.');
                } else {
            $("#result").html('Something\'s went wrong.');
                }
        }
            });
      });

    });       
</script>

创建test.php文件,使用$_POST["post_id"]更改自定义字段等,并回显&#34;完成&#34;如果php文件上的一切都很好。

修改 test.php示例:

<?php
if($_POST["action" == "watched"] && isset($_POST["post_id"])) {
    // do what you want.
    if($everything_is_good) {
        echo "done";
    }
}
?>