Я пытаюсь создать портфолио изображений горизонтальных и вертикальных изображений в Wordpress с использованием Cycle2, где все вертикальные (портретные) изображения отображаются парами. Следующий код работает, но он отображает каждое изображение дважды, один раз как текущий и один раз как следующий. Как пропустить изображение, если оно было показано ранее? Благодаря!Отображать портретные изображения парами, используя Cycle2
$args = array(
'post_type' => 'attachment',
'numberposts' => -1,
'post_parent' => $post->ID,
);
$attachments = get_posts($args);
$length = count($attachments);
for($i = 0; $i < $length ; ++$i) {
$attachment = current($attachments);
$next_attachment = next($attachments);
$image_attributes = wp_get_attachment_image_src($attachment->ID, 'large');
$next_image_attributes = wp_get_attachment_image_src($next_attachment->ID, 'large');
$w = $image_attributes[1];
$h = $image_attributes[2];
$nw = $next_image_attributes[1];
$nh = $next_image_attributes[2];
if($h > $w & $nh > $nw) {
echo '<li>';
echo wp_get_attachment_image($attachment->ID, 'large');
echo wp_get_attachment_image($next_attachment->ID, 'large');
echo '</li>';
}
Спасибо, но портфолио будет состоять не только из портретных изображений, поэтому мне нужно включить какое-то заявление, в котором пропускаются только портретные изображения. – MrArkadin
@MrArkadin Ах да, пропустил это - я сделал редактирование, поэтому счетчик увеличивается только для изображений портфолио. – Steve
Я попытался выполнить эту работу, но кажется, что «следующий» и «текущий» работают не так, как ожидалось, внутри цикла foreach, поэтому я не могу подсчитать размеры следующего прикрепления – MrArkadin