WPML

코드에서 사용하는 예제와 함께 ACF Multilingual(ACFML) 상수 및 훅의 전체 목록을 확인하세요.

ACF Multilingual(ACFML) 훅

acfml_should_translate_acf_entity

이 훅을 사용하면 ACF 필드 또는 필드 그룹의 번역 여부를 결정할 수 있습니다. 이 필터를 사용하여 사용자 정의 로직에 따라 특정 필드나 그룹의 번역을 건너뛸 수 있습니다.

유형: 필터

사용 가능 버전: ACFML 2.1.4

매개변수:

$shouldTranslate
(bool) (필수) 필드 또는 필드 그룹의 번역 여부입니다. 기본값은 true입니다.

$entity
(array) (필수) 번역할 엔터티로, 필드 배열 또는 그룹 배열입니다.

$entityType
(string) (선택) 번역할 엔터티의 유형입니다. ‘field’ 또는 ‘group’일 수 있습니다.

훅 사용 예제:

add_filter( 'acfml_should_translate_acf_entity', function( $shouldTranslate, $entity, $entityType ) {
	if ( 'field' === $entityType ) {
		return false;
	}

	return $shouldTranslate;
} );

acfml_field_group_mode_field_translation_preference

이 필터를 사용하면 필드 그룹이 동일한 필드 또는 다른 필드 모드를 사용할 때 ACF 필드의 기본 번역 기본 설정을 재정의할 수 있습니다.

참고: 이 필터는 개별 필드의 저장된 기본 설정이 아니라 기본 번역 기본 설정만 변경합니다. 기본값을 수정하는 경우 새 기본값을 적용하려면 영향을 받는 필드 그룹을 다시 저장해야 합니다.

유형: 필터

사용 가능 버전: ACFML 2.0.0

매개변수:

$fieldTranslationPreference (int) (필수) 필드의 기본 번역 기본 설정입니다. 가능한 값은 다음과 같습니다.

  • 0번역하지 않음. WPML이 필드를 완전히 무시합니다.
  • 1복사. 필드 값이 모든 언어에 복사되고 동기화 상태를 유지합니다.
  • 2번역. 필드 값을 번역할 수 있게 됩니다.
  • 3한 번 복사. 필드 값이 모든 언어에 한 번 복사되며, 그 이후에는 각 언어에서 독립적으로 편집할 수 있습니다.

$groupMode (string) (필수) 필드 그룹 번역 모드입니다. 가능한 값: translation 또는 localization.
$field (array) (필수) ACF 필드 배열입니다.

훅 사용 예제:

add_filter( 'acfml_field_group_mode_field_translation_preference', function( $fieldTranslationPreference, $groupMode, $field ) {
    $fieldType = $field['type'] ?? null;

    if ( 'link' === $fieldType ) {
        return 2; // WPML_TRANSLATE_CUSTOM_FIELD
    }

    return $fieldTranslationPreference;
}, 10, 3 );

이 예제는 link 필드 유형을 강제로 번역 가능하게 만들어 기본 copy 또는 copy_once 기본 설정을 재정의합니다.

ACF Multilingual(ACFML) 상수

ACFML_EXCLUDE_FIELD_GROUP_STRINGS_IN_POST_JOBS

ACFML 2.1.5부터 이 상수를 사용하여 글 번역 작업에 필드 그룹 문자열을 포함할 수 있습니다.

이를 활성화하려면 wp-config.php 파일에 다음 줄을 추가하세요.

define( 'ACFML_EXCLUDE_FIELD_GROUP_STRINGS_IN_POST_JOBS', false );

참고:

  • wp-config.php 파일에 이 코드를 추가하기 전에 번역 작업을 생성한 경우, 해당 작업을 취소하고 새로 생성하세요.
  • 필요한 경우 번역 대시보드를 통해 번역할 필드 레이블과 선택 항목을 보낼 수 있습니다.

ACFML_HIDE_FIELD_ANNOTATIONS

ACF Multilingual은 번역된 각 필드에 원본 언어의 값에 대한 정보를 추가합니다.

번역된 필드에서 이 정보를 제거하려면 사이트의 wp-config.php 파일에 다음 줄을 추가할 수 있습니다.

define( 'ACFML_HIDE_FIELD_ANNOTATIONS', true );

ACFML_REPEATER_SYNC_DEFAULT

이 상수를 사용하여 반복(Repeater) 필드 동기화 기능의 기본값을 설정할 수 있습니다. 기본적으로 true로 설정되어 있습니다. 즉, 반복 필드가 번역 전체에서 자동으로 동기화됩니다. 이 상수를 false로 설정하면 반복 필드 동기화가 비활성화됩니다.

테마의 functions.php 파일에서 ACFML_REPEATER_SYNC_DEFAULT의 기본값을 재정의할 수 있습니다.

define('ACFML_REPEATER_SYNC_DEFAULT', false);

ACFML_SCAN_LOCAL_FIELDS

이 상수를 false로 설정하면 로컬 필드에 대한 JSON 파일 스캔이 비활성화됩니다.

즉, 로컬 필드에서 번역 기본 설정을 변경하더라도 데이터베이스에 동기화되지 않습니다. 필드에 대한 번역 기본 설정을 수동으로 설정해야 합니다.

자세한 내용은 로컬 JSON 사용에 대한 공식 ACF 설명서를 확인하세요.

작성자: Amir · 마지막 업데이트: 2026년 6월 30일