godsplane
@godsplane

Как избавиться от пустого цикла без которого ничего не работает?

Вывожу посты по меткам.
<div class="portfolio-wrapper row j-center container">
  <?php 
$tags = get_the_tags();
foreach ( $tags as $tag ){
  
}
   $lastposts = get_posts( array(
	'numberposts' => -1,
	'tag' => $tag->slug,
	'category'    => 0,
	'orderby'     => 'menu_order',
	'order'       => 'DESC',
	'include'     => array(),
	'exclude'     => array(),
	'meta_key'    => '',
	'meta_value'  =>'',
	'post_type'   => 'portfolio',
	'suppress_filters' => true, // подавление работы фильтров изменения SQL запроса
) );
   foreach( $lastposts as $post ){ setup_postdata($post);
     ?>

  <div class="portfolio-item">
    <h2>
      <? the_title() ?>
    </h2>
    <a class="fancybox" rel="group" href="<?php the_post_thumbnail_url('large')?>">
      <img src="<?php the_post_thumbnail_url('medium')?>" alt="Фотография">
    </a>


  </div>

  <?php 
     
   }
   wp_reset_postdata()
   ?>
</div>
</div>


Без этого ничего не работает
$tags = get_the_tags();
foreach ( $tags as $tag ){
  
}

Но это же пустой цикл, как можно избавится от этой конструкции и почему это работает так?
  • Вопрос задан
  • 46 просмотров
Решения вопроса 1
Rickkk
@Rickkk
Цикт имеет значение, т.к. заполняет переменную $tag последним элементом из массива $tags. А затем в последующем коде данная переменная используется вот так - 'tag' => $tag->slug,
Попробуйте заменить цикл на выражение
$tag = array_pop($tags);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы