个性化阅读
专注于IT技术分析

如果UL列表是第一个孩子和最后一个孩子,如何添加跨度标签?

我正在处理WordPress自定义字段, 并且需要在循环中编写PHP if-else条件, 无论它是ul列表的第一个孩子还是最后一个孩子。但我不知道如何申请, 请帮我解决

这是我的下面的代码

<?php if( have_rows('chart') ): ?>
<ul class="list-unstyled">
<?php while( have_rows('chart') ): the_row();
$sr_no = get_sub_field('sr_no');
$list_content = get_sub_field('list_content');
?>
<li><div><span class="w-num"><?php echo $sr_no; ?></span><?php echo $list_content; ?></div><span class="chart-divider"><span class="chart-divider-r"></span></span></li>
<?php endwhile; ?>
</ul>
<?php endif; ?>

#1


计算行的条目。

设置一个计数器, 并在每次迭代时增加。

<?php if( have_rows('chart') ): ?>
<ul class="list-unstyled">
<?php 
$counter = 1;
$total-row = // Figure out how to  count(rows), or something like that

while( have_rows('chart') ): the_row();
    $sr_no = get_sub_field('sr_no');
    $list_content = get_sub_field('list_content');
if($counter == 1){
   // First Row 
} elseif ($counter == $total-row){
   // Last Row
}

    ?>
<li><div><span class="w-num"><?php echo $sr_no; ?></span><?php echo $list_content; ?></div><span class="chart-divider"><span class="chart-divider-r"></span></span></li>
    <?php 
    $counter++;
endwhile; ?>
</ul>
<?php endif; ?>

#2


请尝试以下方法:

你将在li中看到的结果是一个类

如果拳头李, 你将看到first_class

如果是最后一位, 你将看到last_class

其他只有some_class

<?php 
    $Total_charts_count = wp_count_posts( 'chart' )->publish; //Total count of charts
    $chart_number = 1; //Loop starting point.
    
    if( have_rows('chart') ): ?>
        <ul class="list-unstyled">
            <?php 
                while( have_rows('chart') ): the_row();
                    $sr_no = get_sub_field('sr_no');
                    $list_content = get_sub_field('list_content'); 
                    
                    // First item
                    if($chart_number == 1) {
                        $class = 'some_class first_class';
                        
                    // Last item
                    } else if ($chart_number == $Total_charts_count) {
                        $class = 'some_class last_class';
                        
                    // Not first / Not last item
                    } else {
                        $class = 'some_class';
                    }
                      
                    ?>
                        <li class="<?php echo $class; ?>">
                            <div>
                                <span class="w-num"><?php echo $sr_no; ?></span>
                                <?php echo $list_content; ?>
                            </div>
                            <span class="chart-divider">
                                <span class="chart-divider-r"></span>
                            </span>
                        </li>
                <?php 
                    $chart_number++;
                    endwhile; ?>
        </ul>
    <?php endif; 
?>

希望它为你工作。

赞(0)
未经允许不得转载:srcmini » 如果UL列表是第一个孩子和最后一个孩子,如何添加跨度标签?

评论 抢沙发

评论前必须登录!