@DeniSidorenko

Как выводить по определенной структуре посты в WP?

Добрый день предположим что постов в WP 20.
В стандартном варианте они будут выводится так
<div class='items">
<div class='item"></div>
и еще 19 таких же
</div>


Мне надо же что бы выводились по 6 в новой структуре

<div class="items">
	<!-- First Items wrapper -->
	<div class="items-wrapper">
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
	</div>
	<!-- Two Items wrapper -->
	<div class="items-wrapper">
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
		<div class="item"></div>
	</div>

</div>


Подскажите как такое реализовать
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
solidcreature
@solidcreature
Развиваю сообщество WordPress в Москве
Здравствуйте
Для начала пример стандартного цикла Вордпресса
<div class="items">
<?php while (have_rows()): the_row(); ?>
  <div class="item"></div>
<?php endwhile; ?>
</div><!-- items -->


Теперь вариант если нужно вывести по 6 штук
echo '<div class="items">';
//Зададим переменную, которая будет считать количество элементов 
$counter = 1; 

//Стандартный цикл Вордпресс
while (have_rows()): the_row(); 
  //Сделаем проверку на начало группы из 6-ти элементов 
  if ($counter == 1): 
    //Выводим открывающий тег группы
    echo '<div class="items-wrapper">'; 
  endif;

  //Выведем элемент в цикле
  echo '<div class="item"></div>';

  //Сделаем проверку на конец группы из 6-ти элементов
  if ($counter == 6): 
    //Выводим закрывающий тег группы
    echo '</div><!-- items-wrapper -->'; 
    //Если группа закончена, приводим счетчик опять к единице
    $counter = 1; 
  else: 
  // Увеличиваем счетчик на единицу после каждого элемента 
  $counter++; 
  endif;
endwhile; 

//Если цикл вордпресс закончился, а группа не завершена добавляем закрывающий див
if ($counter != 1): 
 echo '</div><!-- items-wrapper -->';
endif; 

echo '</div><!-- items -->';
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы