acf_field_flexible_content::duplicate_field()publicACF 3.6

This filter is appied to the $field before it is duplicated and saved to the database

Метод класса: acf_field_flexible_content{}

Хуков нет.

Возвращает

$field. - the modified field

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

$acf_field_flexible_content = new acf_field_flexible_content();
$acf_field_flexible_content->duplicate_field( $field );
$field (обязательный)
-

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

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

Код acf_field_flexible_content::duplicate_field() ACF 6.0.4

function duplicate_field( $field ) {

	// vars
	$sub_fields = array();

	if ( ! empty( $field['layouts'] ) ) {

		// loop through layouts
		foreach ( $field['layouts'] as $layout ) {

			// extract sub fields
			$extra = acf_extract_var( $layout, 'sub_fields' );

			// merge
			if ( ! empty( $extra ) ) {

				$sub_fields = array_merge( $sub_fields, $extra );

			}
		}
		// foreach

	}
	// if

	// save field to get ID
	$field = acf_update_field( $field );

	// duplicate sub fields
	acf_duplicate_fields( $sub_fields, $field['ID'] );

	// return
	return $field;

}