delete_row()
This function will delete a row of data from a field
No Hooks.
Returns
(boolean).
Usage
delete_row( $selector, $i, $post_id );
- $selector(required)
- .
- $i
- .
Default:1 - $post_id
- .
Default:false
Changelog
| Since 5.2.3 | Introduced. |
delete_row() delete row code ACF 6.8.8
function delete_row( $selector, $i = 1, $post_id = false ) {
// vars
$offset = (int) acf_get_setting( 'row_index_offset' );
$i = (int) $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;
}