仅向第一个帖子添加参数

时间:2015-05-09 作者:Sam

我已经设置了一个名为“视频”的自定义帖子类型。我已经为“视频”指定了一个ACF oEmbed自定义字段。

在归档页面上,我有一个循环,用于查询自定义帖子类型并显示所有视频。

我只想自动播放顶部发布的第一个(最新)视频。我使用的当前方法(如下)将自动播放参数添加到每篇文章中。

是否有办法将此参数移动到自定义帖子类型查询,并仅将其应用于第一篇帖子?

Here\'s what I have so far:

<?php // Begin main loop
while ( have_posts() ) : the_post(); ?>

<?php // Query custom post type
    $args = array(
        \'post_type\' => \'videos\',
        \'posts_per_page\' => 12
    );
    $get_videos = new WP_Query( $args );
    while ( $get_videos->have_posts() ) :
    $get_videos->the_post();
?>

<?php // ACF video
    $video = get_field(\'video_oembed\');
    preg_match(\'/src="(.+?)"/\', $video, $matches);
    $src = $matches[1];
    $params = array(
        \'showinfo\' => 0,
        \'autoplay\' => 1
    );
    $new_src = add_query_arg($params, $src);
    $video = str_replace($src, $new_src, $video);
    $attributes = \'frameborder="0" scrolling="no"\';
    $video = str_replace(\'></iframe>\',\'\'.$attributes.\'></iframe>\',$video);
    echo \'<div class="video">\' .$video. \'</div>\';
?>

<?php // End query custom post type
endwhile;
wp_reset_postdata();
?>

<?php // end main loop
endwhile; ?>

1 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

使用属性current_postWP_Query 对象-第一篇帖子将为零:

if ( $wp_query->current_post === 0 )
   // First post in main loop

if ( $get_videos->current_post === 0 ) 
   // First video in current videos loop

结束

相关推荐

嵌入YouTube视频的静态图像,而不是空白播放器?

幸亏this answer 我在文本小部件中嵌入了YouTube视频,使用[video src=\"http://youtu.be/JQ_2De2cnzI&rel=0&showinfo=0\"] 但是,加载页面时,它显示为此空白播放器:我尝试添加&start=1 让它显示视频的第一帧,但这没有任何效果。如何让这个嵌入式播放器显示视频中的静止图像,而不是这个空白播放器?