首页 WordPress函数大全 get_sub_field()
购买会员请联系客服,QQ 248758228

get_sub_field()

2020-06-28 / 337阅 / 秦自龙

本视频需要登录以后才能播放

登录

描述

从“重复器”或“组”字段循环中返回特定子字段值的值。

参量

get_sub_field( $selector, [$format_value] ); 
  • $selector (字符串) (必需) 子字段名称或字段关键字。
  • $format_value (布尔) (可选) 是否应用格式化逻辑。默认为true。

返回

(混合)子字段值。

例子

从“重复器”字段中获取一个值。

本示例说明如何循环通过Repeater字段并加载子字段值。

if( have_rows('parent_field') ):
    while ( have_rows('parent_field') ) : the_row();
        $sub_value = get_sub_field('sub_field');
        // Do something...
    endwhile;
else :
    // no rows found
endif; 

从“组”字段中获取值。

本示例说明如何循环浏览“组”字段并加载子字段值。

if( have_rows('parent_field') ):
    while( have_rows('parent_field') ): the_row();

        // Layout 1.
        if( get_row_layout() == 'layout_1' ):

            // Layout 1 value.
            $value = get_sub_field('sub_field_1');

        // Layout 2.
        elseif( get_row_layout() == 'layout_2' ):

            // Layout 2 value.
            $value = get_sub_field('sub_field_2');

        endif;

    endwhile;
endif; 

嵌套循环

本示例说明如何遍历嵌套的重复器字段并加载子字段值。

/**
 * Field Structure:
 *
 * - parent_repeater (Repeater)
 *   - parent_title (Text)
 *   - child_repeater (Repeater)
 *     - child_title (Text)
 */
if( have_rows('parent_repeater') ):
    while( have_rows('parent_repeater') ) : the_row();

        // Get parent value.
        $parent_title = get_sub_field('parent_title');

        // Loop over sub repeater rows.
        if( have_rows('child_repeater') ):
            while( have_rows('child_repeater') ) : the_row();

                // Get sub value.
                $child_title = get_sub_field('child_title');

            endwhile;
        endif;
    endwhile;
endif; 
大家谈论
    我的见解