WPML
apply_filters( 'wpml_unfiltered_admin_string', mixed $default_value, string $option_name )
유형
filter
WPML 버전
3.2.3-dev

설명

WPML 문자열 번역은 테마/플러그인 설정 옵션을 필터링하여 현재 언어로 된 해당 값의 번역을 반환합니다.

이는 예를 들어 WPML 언어가 기본 언어인 영어와 보조 언어인 독일어로 설정된 WordPress 설치에서 현재 언어가 독일어일 때 get_option('{theme_name}_settings');을(를) 호출하면 반환되는 값이 독일어 번역일 것으로 예상할 수 있음을 의미합니다. 그런 다음 현재 언어가 영어일 때는 영어 값이 표시됩니다.

그러나 이는 옵션 값을 update_option('{theme_name}_settings', $new_value);(으)로 업데이트할 때 옵션 값이 두 언어 모두에서 업데이트됨을 의미하기도 합니다. 이것이 항상 바람직한 것은 아닐 수 있습니다.

이럴 때 위의 필터가 유용합니다. 이 필터를 사용하면 WPML 문자열 번역 필터를 우회하여 옵션 값을 가져올 수 있습니다. 반환되는 것은 해당 값을 가져온 언어의 값이므로, 데이터베이스에서 값을 업데이트하는 등의 추가 작업을 수행해도 작업 중인 언어 외의 다른 언어에는 영향을 미치지 않습니다.

인수

$default_value
(mixed) (필수) 문자열이 존재하지 않을 경우 반환할 값입니다.
$option_name
(string) (선택 사항) 가져올 옵션의 이름입니다. SQL 이스케이프 처리되지 않은 이름이어야 합니다.

사용 예시

아래 예제에서는 기본 언어가 아닌 다른 언어를 보고 있다고 가정합니다.
가져오려는 옵션 값은 직렬화된 배열로 저장되어 있습니다. 이 배열에서 단일 키-값 쌍을 업데이트하여 데이터베이스에 저장하려고 합니다. 현재 언어에만 영향을 미칠 것으로 예상합니다.

예제
// retrieve option value is current language
$a = apply_filters( 'wpml_unfiltered_admin_string', get_option( 'my_option_name' ), 'my_option_name' );

// some operations ...
$a['number']++;

//update the value for the current language only
update_option('my_option_name', $a); 	

wpml_media_url, wpml_media_id, force_suppress_filters, wpml_get_translated_slug, wpml_home_url, wpml_translate_single_string, wpml_translate_string, wpml_elements_without_translations, wpml_permalink, wpml_element_link

모든 현지화된 콘텐츠 가져오기 훅 12개 →