它会显示两次标题,因为您的代码应该做到这一点。。。
如果格式正确,您可以清楚地看到它:
// args
$args = array(
\'showposts\' => 5,
\'post_type\' => \'post\',
\'orderby\' => \'date\',
// \'order\' => \'ASC\',
\'meta_query\' => array(
\'relation\' => \'OR\',
array(
\'key\' => \'type_id\',
\'value\' => \'News\',
\'compare\' => \'LIKE\'
),
)
);
// query
$the_query = new WP_Query( $args );
?>
<?php
if ( $the_query->have_posts() ):
$i = 0;
while ( $the_query->have_posts() ) :
$the_query->the_post();
?>
<?php if ( $i == 0 ) : ?>
<div class="card mb-3">
<a href="<?php the_permalink(); ?>" ><img src="<?php the_post_thumbnail_url() ?>" class="card-img-top"></a>
<div class="card-body">
<?php // here you print the title for first item only ?>
<h2 class="card-title"><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<p class="card-text"><small class="text-muted"><?php the_time(\'F jS, Y\'); ?></small></p>
<p class="card-text"><?php the_excerpt(); ?></p>
</div>
<?php endif; ?>
<?pho if ( $i != 0 ) : ?>
<div class="secoundposttak">
<?php endif; ?>
<a href="<?php the_permalink(); ?>">
<img src="<?php the_field(\'thumbnail\'); ?>" />
<?php // and here you print title for every item, so for first item too - so you get it twice ?>
<?php the_title(); ?>
</a>
</div>
<?php
$i++;
endwhile;
endif; ?>
<?php wp_reset_query(); // Restore global post data stomped by the_post(). ?>
现在您可以清楚地看到,您为循环中的第一个项目打印了一些特殊的内容,但也为循环中的每个项目打印了正常标题-因此对于第一个项目,您将同时打印这两个项目。。。
老实说,封装html是一种非常危险和混乱的方式——如果您采用这种方式编码,那么创建未关闭的标记将非常容易。因为您在获取打印的零件时遇到了问题。。。