dstjh46606
dstjh46606
2014-04-08 21:15
浏览 27
已采纳

使用高级自定义字段循环自定义帖子对象

I'm trying the following, as from http://www.advancedcustomfields.com/resources/field-types/post-object/, but it only outputs empty divs:

<?php $post_objects = get_field('project_experts');

if( $post_objects ): ?>
    <div class="row expert">
    <?php foreach( $post_objects as $post): ?>
    <?php setup_postdata($post); ?>
        <div class="mt-one-half">
            <h3><a href="<?php echo get_permalink(); ?>"><?php echo get_the_title(); ?></a></h3>
            <?php the_excerpt(); ?>
        </div>
    <?php endforeach; ?>
    <?php wp_reset_postdata(); ?>
    </div>
<?php endif; ?>

However I know the info is there as when I try <?php print_r( get_field('project_experts') ); ?> I get:

Array ( [0] => Array ( [project_expert] => WP_Post Object ( [ID] => 763 [post_author] => 1 [post_date] => 2014-03-27 17:57:29 [post_date_gmt] => 2014-03-27 17:57:29 [post_content] =>

etc etc.

Any pointers for grabbing values from the array?

Thanks!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongxian7471
    dongxian7471 2014-04-08 21:37
    已采纳

    You're close. You just need to go one level deeper into the array that get_field is returning.

    <?php foreach( $post_objects as $array): ?>
        <?php foreach( $array as $obj): ?>
    
    <?php setup_postdata($obj); ?>
        <div class="mt-one-half">
            <h3><a href="<?php echo get_permalink(); ?>"><?php echo get_the_title(); ?></a></h3>
            <?php the_excerpt(); ?>
        </div>
        <?php endforeach; ?>
    <?php wp_reset_postdata(); ?>
    <?php endforeach; ?>
    //etc... as before
    
    点赞 评论

相关推荐