我用这个代码在我的博客上显示视频循环。它工作得很好。
作用php
function catch_video() {
global $post, $posts;
$first_vid = \'\';
ob_start();
ob_end_clean();
$output = preg_match_all(\'/<iframe.+src=[\\\'"]([^\\\'"]+)[\\\'"].*>/i\', $post->post_content, $matches);
$first_vid = $matches [1] [0];
echo \'<iframe width="100%" height="400" src="\';
echo $first_vid;
echo \'" frameborder="0" allowfullscreen></iframe>\';
}
它由循环中的代码显示:
<?php catch_video();?>
现在,我希望当它发布一个特色图片而不是视频时,它显示了鼠标悬停的代码(我已经准备好了),所以我创建了这个代码,但它有一些问题:
<?php $blog = new WP_Query($args); ?>
<?php while( have_posts() ): the_post(); ?>
<?php if(has_post_thumbnail()): ?>
<!-- Hover Image -->
<div class="image-wrapper-hover">
<!-- hover-content -->
<?php the_post_thumbnail(\'large\');?>
</div>
<!-- close Hover Image -->
<?php else ?>
<?php catch_video();?>
<?php endif ?>
有人知道怎么了吗?
最合适的回答,由SO网友:Joseph Leedy 整理而成
乍一看,else语句中似乎缺少冒号。如果没有更多的信息,我不能告诉你任何其他事情。
<?php if( has_post_thumbnail() ) : ?>
<div class="image-wrapper-hover">
<?php the_post_thumbnail( \'large\' ); ?>
</div>
<?php else : ?>
<?php catch_video();?>
<?php endif; ?>