Foreach结果嵌套div

时间:2018-09-19 08:40:30

标签: php html wordpress

我正在使用的模板应该在父标记内提供项目列表。但是,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>

1 个答案:

答案 0 :(得分:3)

<div class="artist">
  <p><?php echo $artistName;?></p>
<div>

您打开另一个div而不是关闭它,因此它必须为</div>

始终仔细检查代码中的语法错误