WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru
функция не описана

acf_field_repeater::update_value() public ACF 3.6

This filter is appied to the $value before it is updated in the db

Ищем WP-разработчика! Фулл-тайм, удаленка, хорошая зарплата, соц. пакет. Подробности.
Компания Boosta.

@type filter

{} Это метод класса: acf_field_repeater{}

Хуков нет.

Возвращает

$value. - the modified value

Использование

$acf_field_repeater = new acf_field_repeater();
$acf_field_repeater->update_value( $value, $post_id, $field );
$value (обязательный)
-
$post_id (обязательный)
-
$field (обязательный)
-

Список изменений

С версии 3.6 Введена.

Код acf_field_repeater::update_value() ACF 5.10.2

function update_value( $value, $post_id, $field ) {

	// bail early if no sub fields
	if ( empty( $field['sub_fields'] ) ) {
		return $value;
	}

	// vars
	$new_value = 0;
	$old_value = (int) acf_get_metadata( $post_id, $field['name'] );

	// update sub fields
	if ( ! empty( $value ) ) {
		$i = -1;

		// remove acfcloneindex
		if ( isset( $value['acfcloneindex'] ) ) {

			unset( $value['acfcloneindex'] );

		}

		// loop through rows
		foreach ( $value as $row ) {
			$i++;

			// bail early if no row
			if ( ! is_array( $row ) ) {
				continue;
			}

			// update row
			$this->update_row( $row, $i, $field, $post_id );

			// append
			$new_value++;

		}
	}

	// remove old rows
	if ( $old_value > $new_value ) {

		// loop
		for ( $i = $new_value; $i < $old_value; $i++ ) {

			$this->delete_row( $i, $field, $post_id );

		}
	}

	// save false for empty value
	if ( empty( $new_value ) ) {
		$new_value = '';
	}

	// return
	return $new_value;
}