WordPress发布对象获取页面标题而不是对象标题

时间:2019-03-02 13:02:56

标签: wordpress repeater advanced-custom-fields postdata

我有一个ACF转发器,它可以重复发布对象。我将postdata更改为post对象而不是页面,以便可以获取标题和缩略图。这对于第一个来说效果很好,但是后续的对象会提取正确的缩略图,但标题会从页面标题中提取。

此处提供代码:

<?php if( have_rows('service_repeater') ): ?>
<?php while ( have_rows('service_repeater') ) : the_row(); ?>

    <?php $post_object = get_sub_field('service'); ?>

    <?php if( $post_object ): ?>
        <?php $post = $post_object; ?>
        <?php setup_postdata( $post ); ?>
        <?php $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) ); ?>
        <a href="<?php the_permalink(); ?>" class="service">
            <div class="background" style="background-image: url('<?php echo $url; ?>');"></div>
            <div class="content">
                <h3><?php the_title(); ?></h3>
                <p><?php the_field('read_more_text'); ?></p>
            </div>
        </a>
        <?php unset($post_object, $post); ?>
        <?php wp_reset_postdata(); ?>
    <?php endif; ?>

<?php endwhile; ?>

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

好,所以我删除了<?php unset($post_object, $post); ?>,现在可以使用了。我担心这会在以后使用变量给我带来麻烦。

相关问题