2015-01-17 4 views
0

Я хочу переменную $slideNumber, чтобы получить номер элемента <input> в зависимости от того, какая позиция находится в DOM. Так что, если это первый ребенок, он получит 1, то второй ребенок получит 2 и т.д.Сохраните позицию DOM элемента в переменной?

Выходной сигнал будет выглядеть примерно так:

<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; ?> 

ответ

1

Просто инициализируйте переменную перед циклом и увеличивайте ее на каждой итерации.

<?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; ?> 
1

have_rows в if и while являются избыточными:

<?php 
for($slideNumber = 1; have_rows('slides'); $slideNumber++): 
    the_row(); 
    echo '<input type="radio" name="slider" id="slide' . $slideNumber . '">'; 
endfor; 
?> 
Смежные вопросы