这是一个很奇怪的东西。
我正在制作详细页面模板,并且需要两个转发器字段才能显示在同一页面上。我已经在不同的页面上做了多次,并且一页上有3个转发器字段,并且显示效果很好。
有两个块detail__other & detail__information
DO =细节__其他 DI = detail__information
这需要一些解释
如果我将DI放在DO上方,DIn会正确显示并且DO不会渲染,但是如果我反过来说,它们都不会渲染。
如果我随后将DI放在DO上方,并将DI标记直接复制在其下,则DI和DO都将渲染。
我确定存在语法错误,但是我已经多次检查了该错误,但找不到任何错误。
下面的代码:
<div class="detail__other">
<div class="detail--contain">
<div class="detail__heading detail__heading--black">Other Products</div>
<?php if(have_rows('other_products')) : ?>
<ul class="detail__other-products">
<?php while( have_rows('other_products') ): the_row(); ?>
<li class="detail__others-products-item">
<?php $post_object = get_sub_field('products'); ?>
<?php if( $post_object ): ?>
<?php $post = $post_object; setup_postdata( $post ); ?>
<a href="<?php the_permalink(); ?>"><img src="<?php the_post_thumbnail_url('featured-small'); ?>" alt="<?php the_title(); ?>" /></a>
<?php the_title(); ?>
<?php wp_reset_postdata(); ?>
<?php endif; ?>
</li>
<?php endwhile; reset_rows(); ?>
</ul>
<?php endif; ?>
</div>
</div>
<?php if(have_rows('technical_information')) : ?>
<div class="detail__information">
<div class="detail--contain">
<div class="detail__content">
<div class="detail__heading">Technical Information</div>
<table class="detail__table">
<thead>
<tr>
<th>Material</th>
<th>Grades</th>
</tr>
</thead>
<tbody>
<?php while( have_rows('technical_information') ): the_row();
// vars
$material = get_sub_field('material');
$grades = get_sub_field('grades');
?>
<tr>
<td><?=$material;?></td>
<td><?=$grades;?></td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
</div>
</div>
</div>
<?php endif; ?>