我正在试图弄清楚如何仅将名为Replace featured Image with Video的插件的功能应用于博客帖子本身而不是主页摘录(因此摘录中没有特色图片,也没有视频,但是一个视频,没有图片在帖子itselft上),但我还没有成功。
我尝试了这部分代码:
(请注意,这只是整个插件的代码片段) // ********* *********** //替换视频 // ********* *********** function filter_featured_image_to_video($ html,$ post_id = 0){
global $post;
if ( isset($post) && !empty($post) ) {
$x = get_post_meta( $post->ID, '_related-video', true);
if (strlen($x) > 0)
return $x;
}
return $html;
}
if (!is_admin())
add_filter( 'post_thumbnail_html', 'filter_featured_image_to_video' );
对我来说最有意义的是将 if(!is_admin())更改为 if(!is_admin()&&(is_sinlge())但是停止加载整个网站,并留下一个空白屏幕。
我还尝试仅使用if(is_single())创建一个独立语句,但这也会使事情变成空白。
我错过了什么?
答案 0 :(得分:0)
有多种方法可以实现这一目标,其中一种方法是使用另一个包含大量可用内容的插件,称为高级自定义字段。
在ACF中,您可以创建一个额外的字段"精选视频"您可以在哪里选择每个帖子/页面的媒体项目(取决于创建字段下面的设置)。请务必设置"字段类型"到"文件"和"返回值" to" file url"在循环中,您可以将其称为
<?php echo get_field("featured_video", $postid); ?>
在回显的网址周围,您可以像这样放置视频标记:
<video width="320" height="240" controls>
<source src="<?php echo get_field("featured_video", $postid) ?>" type="video/mp4">
Your browser does not support the video tag.
</video>
请注意,这是在HTML5中,客户端浏览器并不总是支持