将元素的 DOM 位置存储在变量中?

Store the DOM position of an element in a variable?

我希望变量 $slideNumber 根据元素在 DOM 中的位置获取 <input> 元素的编号。所以如果它是第一个 child,它会得到 1,第二个 child 会得到 2,等等

输出看起来像这样:

<div>
    <input type="radio" name="slider" id="slide1">
    <input type="radio" name="slider" id="slide2">
    <input type="radio" name="slider" id="slide3">
    <input type="radio" name="slider" id="slide4">
    ...
</div>

代码如下:

<?php if( have_rows('slides') ):
    while ( have_rows('slides') ) : the_row();

    $slideNumber = // not sure what to do here

    ?>

<input type="radio" name="slider" id="slide<?php echo $slideNumber; ?>">

<?php endwhile;endif; ?>

只需在循环之前初始化您的变量,并在每次迭代时递增它。

<?php 
if( have_rows('slides') ):
    $slideNumber = 1;
    while ( have_rows('slides') ) : the_row();
?>

<input type="radio" name="slider" id="slide<?php echo $slideNumber++; ?>">

<?php endwhile;endif; ?>

ifwhile中的have_rows是多余的:

<?php 
for( $slideNumber = 1; have_rows('slides'); $slideNumber++ ):
    the_row();
    echo '<input type="radio" name="slider" id="slide' . $slideNumber . '">';
endfor;
?>