php 尝试在保存帖子之前获取ACF字段的默认值

kkbh8khc  于 2022-12-17  发布在  PHP
关注(0)|答案(2)|浏览(115)

我试图得到一个ACF字段的默认值,但无济于事.我有这个代码在时刻:

<section id="location-info">
        <?php if( get_field('location_info') && get_field('is_airport') == false && get_field('is_railway_station') == false): ?>
            <h3>Location info</h3>
            <p><?php the_field('location_info') ?></p>
        <?php elseif ( get_field('airport_info') && get_field('is_airport') == true && get_field('is_railway_station') == false): ?>
            <h3>Airport info</h3>
            <p><?php the_field('airport_info') ?></p>
        <?php elseif ( get_field('railway_info') && get_field('is_airport') == false && get_field('is_railway_station') == true): ?>
            <h3>Railway info</h3>
            <p><?php the_field('railway_info') ?></p>
        <?php elseif ( get_field('is_airport') == true && get_field('is_railway_station') == true): ?>
            <h3>Airport info</h3>
            <p><?php the_field('airport_info') ?></p>
        <?php else: ?>
            <?php if( get_field('is_airport') == false && get_field('is_railway_station') == false): ?>
                <?php echo '1' ?>
                <?php get_field_object('location_info') ?>
                <?php the_field('location_info') ?>
            <?php elseif ( get_field('is_airport') == true && get_field('is_railway_station') == false): ?>
                <?php echo '2' ?>
                <?php get_field_object('airport_info') ?>
            <?php elseif ( get_field('is_airport') == false && get_field('is_railway_station') == true): ?>
                <?php echo '3' ?>
                <?php get_field_object('railway_info') ?>
            <?php else: ?>
                <?php echo 'No info for this location' ?>
            <?php endif; ?>
        <?php endif; ?>
    </section>

get_field_object('location_info') .这一行是为了获取字段组中定义的字段“位置信息”的默认值(至少我认为是这样)。然而,这一行返回false,并将继续返回false,直到我打开并保存帖子。
最大的问题是:有没有一种方法可以得到默认值而不需要先保存帖子?

zour9fqk

zour9fqk1#

可以使用acf_get_field()函数获取所有字段数据。该函数返回一个包含default_value的数组。

acf_get_field('location_info')['default_value']
h7appiyu

h7appiyu2#

对于以后要查找此内容的任何人,我找不到acf_get_field函数,get_field函数不起作用。
但是,如果使用get_field_object,使用field键,可以获得包含该字段所有信息的数组。

相关问题