Расширенные пользовательские поля - значок (тип сообщения изображения) src не выводится правильно - PullRequest
0 голосов
/ 27 октября 2019

Я использую расширенные настраиваемые поля на своем веб-сайте WordPress, и у меня возникла проблема с определенными полями типов сообщений изображений.

Они выводятся так:

<img src="57584, 57584, icon-star-green, icon-star-green.svg, 585, http://example.com/wp-content/uploads/2017/10/icon-star-green.svg, http://example.com/services/script-writing/icon-star-green/, , 1, , , icon-star-green, inherit, 58344, 2017-10-11 21:15:32, 2018-11-04 01:53:57, 0, image/svg+xml, image, svg+xml, http://example.com/wp-includes/images/media/default.png, 0, 0, Array" class="bens-item__icon" alt="">

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

Вот как код вызывает это настраиваемое поле:

<img src="<?php the_field('industry_advantage1_icon'); ?>" class="bens-item__icon" alt="" />

Есть идеи, почему он будет выводиться так? Как я могу решить это?

Ответы [ 2 ]

1 голос
/ 28 октября 2019

Поле acf возвращает массив. Таким образом, чтобы получить URL-адрес изображения, сначала присвойте поле переменной, например, так:

$image = get_field('industry_advantage1_icon');

, затем вы можете вызвать значения следующим образом:

<img src="<?php echo $image['url'] ?>" class="bens-item__icon" alt="" />

Вот документацияо том, как использовать поле Изображение расширенных пользовательских полей. https://www.advancedcustomfields.com/resources/image/

0 голосов
/ 27 октября 2019

<?php
//if custom field isn't blank
if ($alternative_post_image !== '' ) { ?>
<img src="<?php echo $alternative_post_image; ?>" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" />
<?php } else { ?>
<?php
//show featured image
the_post_thumbnail();
?>
<?php } ?>
...