【问题标题】:How to Display Video from Wordpress Custom Meta Box?如何从 Wordpress 自定义元框显示视频?
【发布时间】:2014-09-25 20:44:21
【问题描述】:

我以this plugin 为起点创建了一个自定义元框,允许用户选择精选视频。元框工作得很好,现在我想弄清楚如何在帖子中显示视频。以下代码显示视频:

<video controls="controls" preload="auto" width="100%" height="100%">
    <source src="<?php
    // Retrieves the stored value from the database
    $meta_value = get_post_meta( get_the_ID(), 'meta-image', true );
    // Checks and displays the retrieved value
    if( !empty( $meta_value ) ) {
        echo $meta_value;
    } ?>" type="video/mp4" />
</video>

那太好了。但我想写一个声明,说“如果帖子有精选视频,则显示它,如果没有显示精选缩略图。”有人知道怎么做吗?

编辑:我越来越近了。下面的代码几乎可以工作,但是对于有特色图片(不是视频)的帖子,它会显示一个空的视频播放器而不是特色图片。如何修改以下代码以使特色图片正常工作?

<?php 

$slam_featured_video = get_post_meta( get_the_ID(), 'meta-image', true );

if (isset($meta_value))  {
    echo '<video controls="controls" preload="auto" width="100%" height="100%">
    <source src="'. $slam_featured_video. '" type="video/mp4" />
    </video>';
} elseif (empty($meta_value)) {
    echo the_post_thumbnail('full');
}

?>

【问题讨论】:

    标签: php video wordpress meta-boxes


    【解决方案1】:

    你几乎明白了!

    如果没有精选视频,您将返回一个空字符串 ("")。 isset("") = true,因此您仍然会出现在精选视频块中。

    只有一个空字符串本身就会评估为假,所以这样做:

    if ($meta_value)  {
        echo '<video controls="controls" preload="auto" width="100%" height="100%">
        <source src="'. $slam_featured_video. '" type="video/mp4" />
        </video>';
    } elseif (empty($meta_value)) {
        echo the_post_thumbnail('full');
    }
    

    【讨论】:

    • 当我输入您的代码时,图像缩略图显示正确(没有视频控件),但视频缩略图根本没有出现。想法?
    【解决方案2】:

    经过更多的研究和实验,我找到了解决方案。以下代码适用于我。感谢@manishie 让我走上正轨。

    <?php 
    
    $slam_featured_video = get_post_meta( get_the_ID(), 'meta-image', true );
    
    if (!empty($slam_featured_video))  {
        echo '<video controls="controls" preload="auto" width="100%" height="100%">
        <source src="'. $slam_featured_video. '" type="video/mp4" />
        </video>';
    } elseif (empty($slam_featured_video)) {
        echo the_post_thumbnail('full');
    }
    
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多