【问题标题】:get and show attached video wordpress获取并显示附加的视频 wordpress
【发布时间】:2014-12-29 21:24:08
【问题描述】:

我需要从帖子中获取附加视频(通过 Youtube 的 url)并在同一页面中动态显示。 事实是我有 2 种类型的 single.php 其中一个显示带有缩略图的帖子

第二个需要显示视频而不是图像。

为了获取图像,我使用此代码

<?php the_post_thumbnail('full'); ?>

我知道,那不是附件,那是缩略图。但是我可以从帖子中获取附加视频并像图片一样显示它吗?

例如我有这样的帖子

我收到这样的帖子页面

我可以使用任何短代码在上面显示相同的视频吗?

【问题讨论】:

  • 我有疑问。您想将两者用于同一个帖子吗?或者您想要视频或图像?
  • 我只想在附有视频的帖子中使用视频
  • 因此,如果存在视频,则使用视频而不是图像,否则仅显示图像。我正确吗?我们可以使用插件来实现您想要的结果吗?
  • 是的,你是对的!如果可能,我不想使用插件。
  • 您可以使用custom field 添加您的试管网址。之后您需要使用get_post_meta() 检索它,然后您可以使用&lt;?php echo do_shortcode('[embed]'.$youtube_video_url.'[/embed]'); ?&gt; 之类的东西

标签: php wordpress wordpress-theming


【解决方案1】:

正如你提到的你不想使用插件,那么你可以用custom_field来实现它。

所以首先添加一个 custom_field 并将其命名为您想要的任何名称(我使用过 utube_video_url)。

添加字段后,下一步是输入 Youtube URL。

就是后端。现在是编码的时候了。

<?php 
    global $post, $wp_embed;
    $youtube_video_url = get_post_meta($post->ID, 'utube_video_url', true); //store youtube URL in variable

    if(!empty($youtube_video_url)): //Check Youtube URL is entered or not
        echo $wp_embed->run_shortcode('[embed]'.$youtube_video_url.'[/embed]');
    else:
        the_post_thumbnail();
    endif;

?>

我们将 Youtube URL 存储在一个变量中,然后检查用户是否输入了 YouTube URL。

如果是,那么它将输出 youtube URL,否则它将打印 Feature Image

简码参考Do_Shortcode not working for Embed

如果您有任何疑问,请告诉我。

【讨论】:

【解决方案2】:
<?php
    // add this in your theme functions.php

            function video_yt_shortcode( $atts ){
            ?>
         // for thumbnail
            <img src="http://img.youtube.com/vi/<?php echo $atts['video_id']; ?>/0.jpg">
         //for video
     <iframe width="745" height="400" src="http://www.youtube.com/embed/<?php echo     $atts['video_id']; ?>?autoplay=1" frameborder="0" allowfullscreen></iframe>';
            <?php
            }
            add_shortcode( 'yt_video', 'video_yt_shortcode' );
            ?>

使用简码 [yt_video video_id="ytvideo_id"]

像这样 [yt_video video_id="8KxIHVGch8I"]

【讨论】:

  • 不,这不是我想要的。我想从帖子中获取附加的视频文件。像&lt;?php get_attached_media('video') ?&gt; 一样,但这段代码返回数组,我希望它返回文件,而不是数组,我可以将它粘贴到同一页面中我想要的任何位置......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-31
  • 2013-10-12
相关资源
最近更新 更多