Как получить данные объекта сообщения из формы Wordpress ACF - поле с гибким содержимым

Используя расширенный плагин настраиваемого поля, у меня есть настраиваемый тип сообщения, которому назначены различные настраиваемые поля.

Я пытаюсь вывести все данные, содержащиеся в гибком поле содержимого "content"

У меня он выводит «text_ad» нормально, но по какой-то причине я не могу понять нашу «newsletter_article», которая является объектом сообщения - любое направление, чтобы заставить эту работу работать, было бы потрясающим.

Прочтите этот https://www.advancedcustomfields.com/resources/fflexible-content/ и этот https://www.advancedcustomfields.com/resources/post-object/

<?php
// check if the flexible content field has rows of data
if( have_rows('content') ):

 // loop through the rows of data
while ( have_rows('content') ) : the_row();

    if( get_row_layout() == 'text_ad' ):

        echo the_sub_field('text_ad_title');
        echo the_sub_field('text_ad_url');
        echo the_sub_field('text_ad_description');

    elseif( get_row_layout() == 'newsletter_article' ): 

        $post_object = get_sub_field('the_newsletter_article');
            if( $post_object ):
                   $post = $post_object;
                   setup_postdata( $post );?>
                   <strong><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></strong>

           <?php 
           wp_reset_postdata();
           endif;

    endif;

endwhile;

else :

// no layouts found

endif;
?>

person Max Stanworth    schedule 27.06.2018    source источник
comment
Предоставьте снимок экрана с настройкой ACF. Макеты строк должны быть именем гибкого типа контента.   -  person Aibrean    schedule 27.06.2018


Ответы (1)


Поскольку я получаю только один объект, я могу получить доступ к таким данным.

<?php
    elseif( get_row_layout() == 'newsletter_article' ): 


        $post_object = get_sub_field('the_newsletter_article');
        $newstitle = $post_object->post_title;
        $newsdescription = $post_object->post_content;
        ?>

        <div style="background-color: #cccccc; margin:0 0 20px 0;">
         <p><strong><?php echo $newstitle; ?></strong></p>
         <p><?php echo $newsdescription; ?></p>
        </div>

   <?php endif; ?>
person Max Stanworth    schedule 27.06.2018