Вывод нужного размера изображения в галереи или изображении ACF PRO

Мануал ACF PRO рекомендует выводить изображения в полном размере. Сейчас расскажим о том как их вывести в нужном вам размере

  • eye 136
  • 0

Итак, официальная документация ACF PRO до недавнего времени говорила нам выводить изображения или галерею следующим образом:

<?php 

$image = get_field('image');

if( !empty($image) ): ?>

	<img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />

<?php endif; ?>

Только проблема в том, что ссылка будет на изображение в полном размере, что далеко не всегда удобно. А оптимизацией и не пахнет.
С недавнего времени они предложили нам следующий вариант:

<?php 

$image = get_field('image');
$size = 'full'; // (thumbnail, medium, large, full or custom size)

if( $image ) {

	echo wp_get_attachment_image( $image, $size );

}

?>

Что уже лучше, но вместе с тегом изображения выведется и куча лишнего включая прописанные атрибуты размеров прямо в тег img.
Более удачным вариантом можно считать следующий:

$img = get_field('image');
<?php echo ($img) ? '<img src="'.$img["sizes"]["thumbnail"].'" alt="'.$img["alt"].'">' : '' ?>

И для галереи похожий вариант только в цикле:

$photogallery = get_field('photogallery');
<?php if($photogallery){ ?>
	<div class="gallery__slider">
		<?php foreach($photogallery as $img){ ?>
		<?php echo ($img) ? '<img src="'.$img["sizes"]["full"].'" alt="'.$img["alt"].'">' : '' ?>
		<?php } ?>
	</div>
<?php } ?>
comments powered by HyperComments

Поделиться

На вашу почту будет отправлена одноразовая ссылка на портфолио

Отправлено!

Что-то пошло не так... Попробуйте отправить позже