Я пытаюсь настроить слайд-шоу внутри цикла wordpress. Для этого я хочу иметь один раздел содержимого слайда и один раздел, который выполняет навигацию.Создание элемента один раз внутри php while loop
Вот мой код:
<div id="upcoming_shows">
<?php if ($shows->have_posts()) : ?>
<?php /* Start the Loop */ ?>
<?php while ($shows->have_posts()) : $shows->the_post(); ?>
<?php //get rid of auto drafts and trash posts
$p_status = get_post_status($post);
if ($p_status != 'trash' and $p_status != 'auto-draft') :
?>
<!--I WANT A containing DIV HERE created only once-->
<div id="slides">
<div class="slide" id="slide-<?php echo $post->ID; ?>">
<?php the_post_thumbnail(); ?>
<p class="show_date"><?php echo get_field('show_date'); ?></p>
<h1 class="band_names"><a href="<?php the_permalink(); ?>" alt="link to blog post page"><?php the_title(); ?></a></h1>
</div><!--end Slide-->
<!--AND IT WILL END HERE-->
</div><!-- end SLIDES CONTAINING DIV-->
<!--THEN ANOTHER DIV HERE CONTAINING THE SLIDES_NAV-->
<div id="slides_nav"> <!--CREATE THIS ONLY ONCE as a wrapper-->
<p class="band_names"><a href=#slide-"<?php $post->ID; ?>"><?php the_title(); ?></a></p>
</div><!--end slides nav CONTAINER-->
<?php endif; ?><!--end Auto Draft check-->
<?php endwhile; ?>
<?php endif; ?><!--end if haveposts-->
</div><!--end upcoming_shows-->
То, что я хотел бы сделать, это обернуть элементы с классом «горкой» в DIV под названием «горки», а затем создать еще один набор элементов, завернутые в div, называемый «slides_nav».
Я не могу понять, так сказать:
«Если это первая итерация цикла, создайте Слой„горки“вокруг всех„“элементов скольжения
. «Если это первая итерация цикла, создайте div, называемый« slide_nav », чтобы обернуть элементы навигации слайда» (который также будет создан внутри цикла (они будут заголовком столбца $ show и внутренней страницы ссылка на слайд с идентификатором, совпадающим с слайдом.)
Я пробовал:
<?php $i=0;
if ($i == 0) {
echo '<div id="slides">';
$i++;
};
и он правильно создал div, но сделал это для каждого слайда (я также добавил условие для закрытия div).
Я новичок в PHP fyi.
Я посмотрел на некоторые ответы, чтобы создать что-то внутри цикла, и попробовал несколько, но я считаю, что отсутствие знаний о программировании может привести к отсутствию простого решения.
Thanks
Причина, по которой div был создан для каждого слайда, заключается в том, что он все еще находится в цикле while. Он будет перезагружен для каждого слайда. –