所以基本上我有一个主页和一个页脚。两者是分开的。php文件。
Im使用ACF 对于此网站。
根据文档,我在主页上为我的“灵活内容”创建了一个while循环,它可以工作,显示从CMS输入字段循环和连接的所有数据。
我的问题是在页脚,我有一个while循环来显示链接,但它不会显示unless 我从主页中删除while循环,然后链接显示在页脚中。
我真的不明白为什么会发生这种情况,我已经测试了allot,我的脑袋都被这件事缠住了,请帮忙。
Main page code:
<?php
// check if the flexible content field has rows of data
if( have_rows(\'flexible_content_field_name\') ):
// loop through the rows of data
while ( have_rows(\'flexible_content_field_name\') ) : the_row();
// check current row layout
if( get_row_layout() == \'gallery\' ):
// check if the nested repeater field has rows of data
if( have_rows(\'images\') ):
echo \'<ul>\';
// loop through the rows of data
while ( have_rows(\'images\') ) : the_row();
$image = get_sub_field(\'image\');
echo \'<li><img src="\' . $image[\'url\'] . \'" alt="\' . $image[\'alt\'] . \'" /></li>\';
endwhile;
echo \'</ul>\';
endif;
endif;
endwhile;
else :
// no layouts found
endif;
?>
<?php get_footer(); ?>
Footer Code: <div class="links">
<?php
if( have_rows(\'footer_page_links\', \'option\') ):
var_dump("test");
while( have_rows(\'footer_page_links\', \'option\') ): the_row();
?>
<p><a href="<?php the_sub_field(\'footer_link\'); ?>"><?php the_sub_field(\'footer_link_name\'); ?></a></p>
<?php endwhile; ?>
<?php endif; ?>
</div>
<?php wp_footer(); ?>
我只想补充一点,即使是
vardump()
如果实现了主页面while循环,则在页脚中显示,这样它就不会进入页脚循环。页脚使用ACF选项页->
LINK如果页脚中的所有其他选项字段不在while循环中,则也会显示。我删除了主页面while循环,然后删除了页脚while循环,这只发生在灵活内容上,而我的其他带有循环的页面,不包含灵活内容的页面工作得很好。