delete_row()ACF 5.2.3

delete_row

This function will delete a row of data from a field

Хуков нет.

Возвращает

(true|false).

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

delete_row( $selector, $i, $post_id );
$selector (обязательный)
-
$i **
-
По умолчанию: 1
$post_id **
-
По умолчанию: false

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

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

Код delete_row() ACF 6.0.4

function delete_row( $selector, $i = 1, $post_id = false ) {

	// vars
	$offset = acf_get_setting( 'row_index_offset' );
	$i      = $i - $offset;

	// filter post_id
	$post_id = acf_get_valid_post_id( $post_id );

	// get field
	$field = acf_maybe_get_field( $selector, $post_id );

	// bail early if no field
	if ( ! $field ) {
		return false;
	}

	// get value
	$value = acf_get_value( $post_id, $field );

	// ensure array
	$value = acf_get_array( $value );

	// bail early if index doesn't exist
	if ( ! isset( $value[ $i ] ) ) {
		return false;
	}

	// unset
	unset( $value[ $i ] );

	// update
	acf_update_value( $value, $post_id, $field );

	// return
	return true;

}