ACF\AI\Abilities
FieldGroup::prepare_field_for_ability_import
Ensures a field has a key and name before import and sanitizes user input.
Метод класса: FieldGroup{}
Хуков нет.
Возвращает
array. The field with key, name, and sanitized values.
Использование
$FieldGroup = new FieldGroup(); $FieldGroup->prepare_field_for_ability_import( $field );
- $field(массив) (обязательный)
- The field being prepared for import.
Список изменений
| С версии 6.8.0 | Введена. |
Код FieldGroup::prepare_field_for_ability_import() FieldGroup::prepare field for ability import ACF 6.8.8
public function prepare_field_for_ability_import( $field ) {
// Generate field name if not provided.
if ( empty( $field['name'] ) && ! empty( $field['label'] ) ) {
$field['name'] = acf_slugify( $field['label'], '_' );
}
// Generate field key if not provided.
if ( empty( $field['key'] ) ) {
$field['key'] = 'field_' . uniqid();
}
if ( ! empty( $field['label'] ) ) {
$field['label'] = sanitize_text_field( $field['label'] );
}
if ( ! empty( $field['instructions'] ) ) {
$field['instructions'] = wp_kses_post( $field['instructions'] );
}
if ( ! empty( $field['placeholder'] ) ) {
$field['placeholder'] = sanitize_text_field( $field['placeholder'] );
}
if ( ! empty( $field['prepend'] ) ) {
$field['prepend'] = sanitize_text_field( $field['prepend'] );
}
if ( ! empty( $field['append'] ) ) {
$field['append'] = sanitize_text_field( $field['append'] );
}
if ( ! empty( $field['wrapper']['class'] ) ) {
$field['wrapper']['class'] = sanitize_text_field( $field['wrapper']['class'] );
}
if ( ! empty( $field['wrapper']['id'] ) ) {
$field['wrapper']['id'] = sanitize_key( $field['wrapper']['id'] );
}
if ( ! empty( $field['choices'] ) && is_array( $field['choices'] ) ) {
$field['choices'] = array_map( 'sanitize_text_field', $field['choices'] );
}
if ( isset( $field['min'] ) ) {
$field['min'] = absint( $field['min'] );
}
if ( isset( $field['max'] ) ) {
$field['max'] = absint( $field['max'] );
}
if ( isset( $field['default_value'] ) ) {
if ( is_string( $field['default_value'] ) ) {
$field['default_value'] = sanitize_text_field( $field['default_value'] );
} elseif ( is_array( $field['default_value'] ) ) {
$field['default_value'] = array_map( 'sanitize_text_field', $field['default_value'] );
}
}
if ( ! empty( $field['message'] ) ) {
$field['message'] = wp_kses_post( $field['message'] );
}
if ( ! empty( $field['conditional_logic'] ) && is_array( $field['conditional_logic'] ) ) {
$field['conditional_logic'] = $this->sanitize_conditional_logic( $field['conditional_logic'] );
}
return $field;
}