【发布时间】:2019-06-10 23:41:02
【问题描述】:
我的footer.php 文件中有一个转发器,它适用于整个网站,但是每当我转到博客页面 (index.php) 时,转发器只显示 一行整个中继器,我不知道为什么会这样。
我尝试将get_option('page_for_posts') 作为转发器字段的第二个参数,但这不起作用。
这是它在除博客页面之外的每个页面上的外观。
这就是它在博客页面上的外观:
在博客页面上只显示一行,即关于我们列。
代码如下:
<?php if ( have_rows('post_object_repeater') ) : ?>
<?php while( have_rows('post_object_repeater') ) : the_row(); ?>
<?php $header = get_sub_field( 'header' ); ?>
<div class="<?php echo $number_of_columns; ?> col-md-6 col-12 list-column">
<?php
$posts = get_sub_field('post_object_relationship');
if( $posts ): ?>
<ul class="list-unstyled <?php if ( ! $header ): echo 'no-header'; endif; ?>">
<?php if ( $header ): ?>
<li class="header mb-3 font-weight-bold text-uppercase"><?php echo $header; ?></li>
<?php endif; ?>
<?php foreach( $posts as $post): ?>
<?php setup_postdata($post); ?>
<li class="list-item">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
<?php wp_reset_postdata(); ?>
<?php endif; ?>
</div>
<?php endwhile; ?>
<?php endif; ?>
此转发器内部确实有一个关系字段,用于拉取网站的每个单独页面或自定义帖子类型。有谁知道为什么不是所有的转发器行都显示在博客页面上,而是在所有其他页面上工作?
【问题讨论】:
-
中继器“post_object_repeater”元框是在选项页面上还是在每个单独的页面上?
-
中继器在 ACF 选项页面中