Support

Account

Home Forums General Issues Displaying Value of a Field

Solving

Displaying Value of a Field

  • Hello all, newbie question.

    I have created 4 custom options for portfolio items, which includes uploading an image and then adding a custom title, subtitle, tagline and link. However, when they all return as “Array” instead of the actual value.

    I.E.: A portfolio items has the following settings:
    Title: Welcome
    Subtitle: The Best Place in the World
    Tagline: Click Me
    Link: https://click.me

    However, instead of displaying the correct values, it just all returns as “Array”.

    Can someone please help with this, I am getting tired of relying on creating extra divs and putting in this information in the image file (as “Caption”, “Title”, “Description”).

    Much thanks will be given!

  • Exactly how are these fields set up? Are these fields you are getting part of a group field? sub fields of a repeater? Something else?

  • They are part of a group.

  • A group field returns an array. You need to either show the elements of the array or use sub field function. The documentation is here https://www.advancedcustomfields.com/resources/group/

  • Oh, I misunderstood your question. It is is not as a group, but a text field.

  • There is no reason that a text field should be returning an array. Please provide some code and additional information on fields you are trying to show.

  • So sorry for the very late response. Here is my PHP Code

    <div class="nk-slider-item <?php echo esc_attr( $active_class ); ?>" data-categories="<?php echo esc_attr( $categories ); ?>" data-background-position="<?php echo esc_attr( $position ); ?>">
                        <?php
                        echo '<img
                            src="' . esc_url( $image['src'] ) . '"
                            srcset="' . esc_attr( $image_small ? $image_small['src'] : $image['src'] ) . '"
                            data-srcset="' . esc_attr( $srcset ) . '"
                            data-sizes="auto"
                            alt="' . esc_attr( $item['title'] ) . '"
                            class="lazyload"
                            style="object-position: ' . esc_attr( $position ) . ';"
    						title="'?><?php echo $portfolio_title['value'] ?><?php echo'"
    						subtitle="'?><?php echo $portfolio_subtitle['value'] ?><?php echo'"
    						tagline="'?><?php echo $portfolio_tagline['value'] ?><?php echo'"
    						link="'?><?php echo $portfolio_link['value'] ?><?php echo'"
                        >';
    
                        if ( $video_url ) {
                            echo '<div data-bg-video="' . esc_attr( $video_url ) . '" data-bg-video-size="' . esc_attr( $video_size ? $video_size : '16x9' ) . '"></div>';
                        }
                        ?>
                    </div>

    And this is the ACP function

    if( function_exists('acf_add_local_field_group') ):
    
    // CUSTOM - Add Custom Theme Options
    acf_add_local_field_group(array(
    	'key' => 'group_5d3483d4797b0',
    	'title' => 'Custom Portfolio Options',
    	'fields' => array(
    		array(
    			'key' => 'field_5d3489ae984d3',
    			'label' => 'Portfolio Options',
    			'name' => '',
    			'type' => 'tab',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => 0,
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'placement' => 'left',
    			'endpoint' => 0,
    		),
    		array(
    			'key' => 'field_5d3489d2984d4',
    			'label' => 'Add Titles and Link',
    			'name' => 'add_titles_and_link',
    			'type' => 'select',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => 0,
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'choices' => array(
    				'Yes' => 'Yes',
    				'No' => 'No',
    			),
    			'default_value' => array(
    				0 => 'No',
    			),
    			'allow_null' => 0,
    			'multiple' => 0,
    			'ui' => 0,
    			'return_format' => 'value',
    			'ajax' => 0,
    			'placeholder' => '',
    		),
    		array(
    			'key' => 'field_5d348410a77d1',
    			'label' => 'Title',
    			'name' => 'portfolio_title',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3489d2984d4',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    		array(
    			'key' => 'field_5d348433a77d2',
    			'label' => 'Subtitle',
    			'name' => 'portfolio_subtitle',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3489d2984d4',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    		array(
    			'key' => 'field_5d34843fa77d3',
    			'label' => 'Tagline',
    			'name' => 'portfolio_tagline',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3489d2984d4',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    		array(
    			'key' => 'field_5d348a42984d5',
    			'label' => 'Tagline Link',
    			'name' => 'tagline_link',
    			'type' => 'select',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3489d2984d4',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'choices' => array(
    				'Yes' => 'Yes',
    				'No' => 'No',
    			),
    			'default_value' => array(
    				0 => 'No',
    			),
    			'allow_null' => 0,
    			'multiple' => 0,
    			'ui' => 0,
    			'return_format' => 'value',
    			'ajax' => 0,
    			'placeholder' => '',
    		),
    		array(
    			'key' => 'field_5d34844ea77d4',
    			'label' => 'Link',
    			'name' => 'portfolio_link',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d348a42984d5',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    	),
    	'location' => array(
    		array(
    			array(
    				'param' => 'post_type',
    				'operator' => '==',
    				'value' => 'portfolio',
    			),
    		),
    	),
    	'menu_order' => 10,
    	'position' => 'normal',
    	'style' => 'default',
    	'label_placement' => 'top',
    	'instruction_placement' => 'label',
    	'hide_on_screen' => '',
    	'active' => true,
    	'description' => '',
    ));
    
    acf_add_local_field_group(array(
    	'key' => 'group_5d3484b7e9e69',
    	'title' => 'Custom Theme Options',
    	'fields' => array(
    		array(
    			'key' => 'field_5d3487527b146',
    			'label' => 'Translate Options',
    			'name' => '',
    			'type' => 'tab',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => 0,
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'placement' => 'left',
    			'endpoint' => 0,
    		),
    		array(
    			'key' => 'field_5d3484efa4eca',
    			'label' => 'Translatable',
    			'name' => 'translatable',
    			'type' => 'select',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => 0,
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'choices' => array(
    				'Yes' => 'Yes',
    				'No' => 'No',
    			),
    			'default_value' => array(
    				0 => 'No',
    			),
    			'allow_null' => 0,
    			'multiple' => 0,
    			'ui' => 0,
    			'return_format' => 'value',
    			'ajax' => 0,
    			'placeholder' => '',
    		),
    		array(
    			'key' => 'field_5d3489189d192',
    			'label' => 'English Page',
    			'name' => 'english_page',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3484efa4eca',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    		array(
    			'key' => 'field_5d34892d9d193',
    			'label' => 'French Page',
    			'name' => 'french_page',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3484efa4eca',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    		array(
    			'key' => 'field_5d34893c9d194',
    			'label' => 'Spanish Page',
    			'name' => 'spanish_page',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3484efa4eca',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    		array(
    			'key' => 'field_5d34894c9d195',
    			'label' => 'German Page',
    			'name' => 'german_page',
    			'type' => 'text',
    			'instructions' => '',
    			'required' => 0,
    			'conditional_logic' => array(
    				array(
    					array(
    						'field' => 'field_5d3484efa4eca',
    						'operator' => '==',
    						'value' => 'Yes',
    					),
    				),
    			),
    			'wrapper' => array(
    				'width' => '',
    				'class' => '',
    				'id' => '',
    			),
    			'default_value' => '',
    			'placeholder' => '',
    			'prepend' => '',
    			'append' => '',
    			'maxlength' => '',
    		),
    	),
    	'location' => array(
    		array(
    			array(
    				'param' => 'post_type',
    				'operator' => '==',
    				'value' => 'page',
    			),
    		),
    		array(
    			array(
    				'param' => 'post_type',
    				'operator' => '==',
    				'value' => 'post',
    			),
    		),
    	),
    	'menu_order' => 20,
    	'position' => 'normal',
    	'style' => 'default',
    	'label_placement' => 'top',
    	'instruction_placement' => 'label',
    	'hide_on_screen' => '',
    	'active' => true,
    	'description' => '',
    ));
    
    endif;

    I have been able to echo successfully before, but I think this code is incorrect.

  • Wow, I feel so dumb. Just figure out my problem. LOCATION!!!!!!

    foreach ( $portfolio_items as $item ) {
                $image = nk_get_attachment( $item['thumbnail'], 'nk_1920x1080' );
                $image_small = nk_get_attachment( $item['thumbnail'], 'nk_300x300' );
    			$pTitle = get_field_object('portfolio_title', $item['id']);
    			$pSubtitle = get_field_object('portfolio_subtitle', $item['id']);
    			$pTagline = get_field_object('portfolio_tagline', $item['id']);
    			$pLink = get_field_object('portfolio_link', $item['id']);
    
                if ( $image || $image_small ) {
                    $active_class = $active_slide == $item['id'] ? 'active' : '';
                    $position_x = nk_get_option( 'background_x_position', 50, true, $item['id'] );
                    $position_y = nk_get_option( 'background_y_position', 50, true, $item['id'] );
                    $position = (int) $position_x . '% ' . (int) $position_y . '%';
    
                    // prepare video
                    $video_type = nk_get_option( 'video_type', 'disable', true, $item['id'] );
                    $video_url = '';
                    $video_size = nk_get_option( 'video_size', '', true, $item['id'] );
                    if ( $video_type === 'local' ) {
                        $mp4 = nk_get_option( 'video_mp4', '', true, $item['id'] );
                        $webm = nk_get_option( 'video_webm', '', true, $item['id'] );
                        $ogv = nk_get_option( 'video_ogv', '', true, $item['id'] );
    
                        if ( $mp4 && is_array( $mp4 ) ) {
                            $video_url .= 'mp4:' . esc_url( $mp4['url'] );
                        }
                        if ( $webm && is_array( $webm ) ) {
                            $video_url .= ( strlen( $video_url ) ? ',' : '' ) . 'webm:' . esc_url( $webm['url'] );
                        }
                        if ( $ogv && is_array( $ogv ) ) {
                            $video_url .= ( strlen( $video_url ) ? ',' : '' ) . 'ogv:' . esc_url( $ogv['url'] );
                        }
                    } else if ( $video_type === 'yt_vm' ) {
                        $video_url = nk_get_option( 'video_url', '', true, $item['id'] );
                    }
    
                    $categories = '';
                    if ( $item['categories'] && count( $item['categories'] ) > 0 ) {
                        foreach ( $item['categories'] as $k => $cat ) {
                            $categories .= ( $k > 0 ? '|' : '' ) . $cat->name;
                        }
                    }
    
                    $srcset = wp_get_attachment_image_srcset( $item['thumbnail'], 'nk_1920x1080' );
    
                    ?>
                    <div class="nk-slider-item <?php echo esc_attr( $active_class ); ?>" data-categories="<?php echo esc_attr( $categories ); ?>" data-background-position="<?php echo esc_attr( $position ); ?>">
                        <?php
                        echo '<img
                            src="' . esc_url( $image['src'] ) . '"
                            srcset="' . esc_attr( $image_small ? $image_small['src'] : $image['src'] ) . '"
                            data-srcset="' . esc_attr( $srcset ) . '"
                            data-sizes="auto"
                            alt="' . esc_attr( $item['title'] ) . '"
                            class="lazyload"
                            style="object-position: ' . esc_attr( $position ) . ';"
    						title="'?><?php echo $pTitle['value'] ?><?php echo'"
    						subtitle="'?><?php echo $pSubtitle['value'] ?><?php echo'"
    						tagline="'?><?php echo $pTagline['value'] ?><?php echo'"
    						link="'?><?php echo $pLink['value'] ?><?php echo'"
                        >';
    
                        if ( $video_url ) {
                            echo '<div data-bg-video="' . esc_attr( $video_url ) . '" data-bg-video-size="' . esc_attr( $video_size ? $video_size : '16x9' ) . '"></div>';
                        }
                        ?>
                    </div>
                    <?php

    I was placing the acf code in the wrong area. Although, if you have a better way to code, that will be a big help too. I know, my code is sloppy. 🙁

Viewing 8 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic.