get_field() ACF 3.6

Отримує значення вказаного поля.

Цю функцію можна використовувати для отримання значення будь-якого поля, будь-якої локації.

Пам’ятайте, кожен тип поля повертає різні типи даних: рядок, число, масив тощо.

Основа для:
acf_shortcode() ,
the_field()

Хуків немає.

Повертає

(Разное). Значення поля.

Використання

get_field($selector, $post_id, $format_value);
$selector
(рядок) (обов’язковий)
Ключ або назва поля (name чи key).
$post_id
(число/object)
Запис (пост) для якого збережено вказане поле.


За замовчуванням: поточний пост
$format_value
(true/false)
Дозволяє увімкнути/вимкнути форматування. При відключеному форматуванні буде повернуто значення, яке воно є в базі даних.


Типово: true

Приклади

0

#1 Отримаємо значення поля поточного посту

Цей приклад показує, як отримати значення поля text_fieldпоточного посту.

$ value = get_field( 'text_field' );
0

#2 Отримаємо значення поля певного посту

Цей приклад показує, як отримати значення поля text_fieldу посту з ID = 123.

$ value = get_field( 'text_field', 123 );
0

#3 Чи існує значення біля поля

Цей приклад показує, як перевірити чи існує значення вказаного поля.

$ value = get_field( 'text_field' );

if($value) {
	echo $value;
}
else {
	echo 'empty';
}
0

#4 Отримаємо значення одного поля у різних об’єктів

Цей приклад показує варіанти, які можна передати $post_id , щоб отримати поле у ​​post, user, term або option.

$post_id = false; // current post
$post_id = 1; // Post ID = 1
$post_id = "user_2"; // user ID = 2
$post_id = "category_3"; // category term ID = 3
$post_id = "event_4"; // event (custom taxonomy) term ID = 4
$post_id = "option"; // options page
$post_id = "options"; // same as above

$ value = get_field( 'my_field', $post_id );
0

#5 Отримаємо значення поля без форматування

У цьому прикладі поле ‘image’ – поле зображення, яке зазвичай повертає об’єкт зображення. Однак, передаючи false як 3-й параметр, значення не форматується і повертається з бази даних як є.

Зауважте, що другий параметр вказано false, щоб визначити поточний пост.

$ image = get_field( 'image', false, false );

список змін

З версії 3.6Введено.

Код get_field() ACF 5.10.2

function get_field( $selector, $post_id = false, $format_value = true ) {

	// filter post_id
	$post_id = acf_get_valid_post_id( $post_id );

	// get field
	$field = acf_maybe_get_field( $selector, $post_id );

	// create dummy field
	if (! $field) {

		$field = acf_get_valid_field(
			array(
				'name' => $selector,
				'key' => '',
				'type' => '',
			)
		);

		// prevent formatting
		$format_value = false;

	}

	// get value for field
	$value = acf_get_value( $post_id, $field );

	// format value
	if ( $format_value ) {

		// get value for field
		$ value = acf_format_value ($ value, $ post_id, $ field);

	}

	// return
	return $value;

}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *