acf_field_repeater::load_value()
Filters the field $value after it is loaded from the database.
Метод класса: acf_field_repeater{}
Хуков нет.
Возвращает
Массив
. $value
Использование
$acf_field_repeater = new acf_field_repeater(); $acf_field_repeater->load_value( $value, $post_id, $field );
- $value(разное) (обязательный)
- The value found in the database.
- $post_id(разное) (обязательный)
- The $post_id from which the value was loaded.
- $field(массив) (обязательный)
- The field array holding all the field options.
Список изменений
С версии 3.6 | Введена. |
Код acf_field_repeater::load_value() acf field repeater::load value ACF 6.0.4
public function load_value( $value, $post_id, $field ) { // Bail early if we don't have enough info to load the field. if ( empty( $value ) || ! is_numeric( $value ) || empty( $field['sub_fields'] ) ) { return false; } $value = (int) $value; $rows = array(); $offset = 0; // Ensure pagination is disabled inside blocks. if ( acf_get_data( 'acf_inside_rest_call' ) || doing_action( 'wp_ajax_acf/ajax/fetch-block' ) ) { $field['pagination'] = false; } if ( ! empty( $field['pagination'] ) && $this->is_rendering ) { $rows_per_page = isset( $field['rows_per_page'] ) ? (int) $field['rows_per_page'] : 20; if ( $rows_per_page < 1 ) { $rows_per_page = 20; } if ( doing_action( 'wp_ajax_acf/ajax/query_repeater' ) ) { $offset = ( intval( $_POST['paged'] ) - 1 ) * $rows_per_page; // phpcs:ignore WordPress.Security.NonceVerification.Missing -- Verified elsewhere. $value = min( $value, $offset + $rows_per_page ); } else { $value = min( $value, $rows_per_page ); } } for ( $i = $offset; $i < $value; $i++ ) { $rows[ $i ] = array(); foreach ( array_keys( $field['sub_fields'] ) as $j ) { $sub_field = $field['sub_fields'][ $j ]; // Bail early if no name (tab field). if ( acf_is_empty( $sub_field['name'] ) ) { continue; } // Update $sub_field name and value. $sub_field['name'] = "{$field['name']}_{$i}_{$sub_field['name']}"; $sub_value = acf_get_value( $post_id, $sub_field ); $rows[ $i ][ $sub_field['key'] ] = $sub_value; } } return $rows; }