Foreach 结果是嵌套的 div



我正在处理的模板应该给我一个父标签内的项目列表。但是,foreach 函数不是堆叠它们,而是将每个项目嵌套在前一个项目中。我从来没有想到过 foreach 函数,所以我在这里有点困惑。

最后,它应该看起来像这样:

<div class="artists">
<div class="artist">
<p>Justus Jonas</p>
</div>
<div class="artist">
<p>Peter Shaw</p>
</div>
</div>

这是代码:

<?php
$terms = get_terms( 'product_tag' );
$term_array = array();
?>
<div class="artists">
<?php if ( ! empty( $terms ) && ! is_wp_error( $terms ) ){
foreach ( $terms as $term ) {
$artistName = $term->name;
?>
<div class="artist">
<p><?php echo $artistName;?></p>
<div>
<?php } } ?>
</div>

这是输出

<div class="artists">
<div class="artist">
<p>Justus Jonas</p>
<div>
<div class="artist">
<p>Peter Shaw</p>
<div></div>
</div>
</div>
</div>
</div>
<div class="artist">
<p><?php echo $artistName;?></p>
<div>

你打开另一个div而不是关闭它,所以它必须</div>

始终仔细检查代码是否存在语法错误

最新更新