Wordpress 针对foreach循环问题中的最后一项
我试图将foreach循环中的最后一项作为目标,但它的行为有点奇怪 我在循环中有两项,我尝试了以下方法:Wordpress 针对foreach循环问题中的最后一项,wordpress,Wordpress,我试图将foreach循环中的最后一项作为目标,但它的行为有点奇怪 我在循环中有两项,我尝试了以下方法: 未为计数设置+/-,这将针对第一项 使用-1作为计数也针对第一项 使用+1作为计数不会以任何项目为目标,直到添加第三个项目 项目,则它将按预期工作 这是密码,有人能帮忙吗 <?php $pages = get_pages(array('child_of' => $post->ID, 'sort_column' => 'menu_order')); foreach($p
<?php $pages = get_pages(array('child_of' => $post->ID, 'sort_column' => 'menu_order'));
foreach($pages as $key => $post)
{
setup_postdata($post);
$fields = get_fields();
?>
<div class="event<?php if( $key == (count( $pages ) +1) ) echo 'last'; ?>">
</div>
<?php } wp_reset_query(); ?>
这是一种方法:
<?php
$pages = get_pages(array('child_of' => $post->ID, 'sort_column' => 'menu_order'));
// keep a record of the number of pages -1
// in order to compare against 0 indexed array key
$pagesNo = count($pages)-1;
foreach($pages as $key => $post)
{
setup_postdata($post);
$fields = get_fields();
?>
<div class="event<?php if( $key == $pagesNo ) echo 'last'; ?>"></div>
<?php } wp_reset_query(); ?>
当你需要计数时,一个for
或while
循环可能比foreach
更好,我已经编辑了我的问题以使其更有意义!当使用-1时,它针对的是第一项而不是第二项。@Rob:能否在循环之前添加var\u dump($pages)
,并编辑您的问题以共享输出?如果数组的索引为0,则肯定需要从数组的计数中减去-1。