Intereting Posts
Попытка изменить отдельную страницу из пользовательского сообщения Как вызвать wp_list_comments () с обратным вызовом вне цикла Отправка комментариев для разных получателей в зависимости от таксономических условий Создайте настраиваемую страницу администрирования для пользовательских типов сообщений + таксономии + мета В текстовом файле WordPress вводится только значение inter? Некоторые сомнения относительно короткого кода галереи в WordPress Использование нового WP_Query в шорткоде в настраиваемом поле приводит к тому, что основной контент сообщения не отображается Добавить размер в Настройки галереи в Media Library почему добавление add_rewrite_rule и свободные переменные URL Закажите пользователей к дате их последнего сообщения Перезаписать CSS без его удаления. Вывести сообщение в начало запроса, если оно находится в определенной категории? Относительные URL-адреса изображений в сообщениях начинаются с корня – не из адреса (URL) в WordPress в общих настройках дата выпуска с повторной загрузкой категории Устанавливать порядковые номера и без поискового вызова для страницы архива

Храните содержимое сообщения в переменной php и выведите их, используя цикл for

Я хочу показывать содержимое своего сообщения в отдельной строке по одному, каждый раз, когда нажимается вкладка. Я уже достиг этого, но проблема в том, что он показывает результат только для последней вкладки. Другие вкладки ничего не делают.

Думаю, мне нужен цикл for для хранения всего моего содержимого в массиве и последующего вывода во второй строке.

<div class="page-tile row"> <?php $i = 0; ?> <?php while( $page_query->have_posts() ) : $page_query->the_post(); ?> <div class="tile col-lg-2 col-md-2 col-sm-2 col-xs-12"> <a class="nav nav-tabs" role="tablist" href="#collapse-<?php the_ID(); ?>" data-toggle="tab" aria-expanded="false" aria-controls="collapse-<?php the_ID(); ?>"> <?php the_post_thumbnail("kontakt-thumb",array('class' => 'img-responsive')); ?> </a> </div> <?php ob_start() ?> <div class="kontakt-content tab-content"> <div class="tab-pane" role="tabpanel" id="collapse-<?php the_ID(); ?>"> <?php echo the_content(); ?> </div> </div> <?php $output = ob_get_clean(); ?> <?php $i++; ?> <?php endwhile; ?> 

Вам нужно показать содержимое ниже, когда нажата вкладка. <div class="row"> <?php echo $output; ?> </div>

Каждый раз, когда вы повторяете цикл, результат $ output перезаписывается, поэтому вы получаете только данные для последней вкладки. Это можно избежать, сохранив значения $ output в виде массива. Вот пример, основанный на вашем коде. Мои изменения следуют за каждым блоком комментариев.

 <?php /* * Create an empty array */ ?> <?php $outputs = array(); ?> <div class="page-tile row"> <?php $i = 0; ?> <?php while ( $page_query->have_posts() ) : $page_query->the_post(); ?> <div class="tile col-lg-2 col-md-2 col-sm-2 col-xs-12"> <a class="nav nav-tabs" role="tablist" href="#collapse-<?php the_ID(); ?>" data-toggle="tab" aria-expanded="false" aria-controls="collapse-<?php the_ID(); ?>"> <?php the_post_thumbnail( "kontakt-thumb", array( 'class' => 'img-responsive' ) ); ?> </a> </div> <?php ob_start() ?> <div class="kontakt-content tab-content"> <div class="tab-pane" role="tabpanel" id="collapse-<?php the_ID(); ?>"> <?php echo the_content(); ?> </div> </div> <?php /* * Store the data with a new array key */ ?> <?php $outputs[] = ob_get_clean(); ?> <?php $i++; ?> <?php endwhile; ?> 

Теперь для ваших вкладок вы перебираете массив.

 <div class="row"> <?php /* * Iterate through the array */ foreach( $outputs AS $output ) { echo $output; } ?> </div>