4
votes

I have a sub field in ACF, named 'imgcolumn_1'.

This is set to be an image, and allows the user to add an image.

Now, when in PHP, I am trying to retrieve the input the user adds.

For example, I have another sub field in AFC called column_1, which I retrieve using

<?php the_sub_field('column_1');?>

Is there another way to retrieve the image? I am trying the below:

<img src="<?php the_sub_field('imgcolumn_1'); ?>" />

But this doesnt display the image, but instead shows the following:

current image

When I inspect this, I can see the URL is there, but it is surrounded by other numbers?

current inspect element

Any help would be amazing.

4

4 Answers

9
votes

Do you return a URL an Array or an ID from your field?

looks like an array to me so: Solution 1:

$image = get_sub_field('imgcolumn_1');
<img src="<?php echo $image['url'];?>" />

Solution 2 (if id):

$image = get_sub_field('imgcolumn_1');
<img src="<?php echo get_permalink($image);?>" />

Solution 3 (if url):

$image = get_sub_field('imgcolumn_1');
<img src="<?php echo $image;?>" />
1
votes

You can use get URL of Image by get_sub_field('imgcolumn_1')['url'];

As function get_sub_field() returns an array.

0
votes

Figured it out!

I needed to select 'image_url' as the return type!

0
votes

For me I had to set the ACF contents image sub field return format to 'Image ID'. As seen in the following screenshot.

image id in acf options