get_fields()
Повертає масив з усіма значеннями полів для певного запису, користувача, коментаря, терміна і так далі.
Функція не дуже елегантна і витрачає багато пам’яті PHP / SQL запитів, якщо ви не використовуєте всі значення.
get_field_objects()
Хуків немає.
Повертає
(Массив)
. Асоціативний масив (field name => field value).
Використання
get_fields($post_id, $format_value);
-
$post_id
(mixed) -
ID запису (користувача, рубрики та .д.), для якого потрібно отримати метаполя.
За промовчанням: false (ID поточного запису в циклі) -
$format_value
(bool) -
Чи використовувати форматування, вказане в параметрах поля.
Типово: true
Приклади
#1 Отримаємо значення метаполів для поточного запису
Відобразимо для поточного запису як списку все метаполя (імена полів та його значення).
$fields = get_fields(); if( $fields ): ?> <ul> <?php foreach( $fields as $name => $value ): ?> <li><b><?php echo $name; ?></b> <?php echo $value; ?></li> <?php endforeach; ?> </ul> <?php endif; ?>
#2 Отримаємо значення для різних сутностей
// Отримаємо значення всіх метаполів поточного запису. $fields = get_fields(); // Отримаємо значення всіх метаполів запису з ID = 1. $post_fields = get_fields(1); // Отримаємо значення всіх метаполів користувача ID = 2. $user_fields = get_fields( 'user_2'); // Отримаємо значення всіх метаполів терміна ID = 3. $term_fields = get_fields( 'term_3'); // Отримаємо значення всіх метаполів терміна з таксономією категорії та ID = 3. $term_fields = get_fields( 'category_3'); // Отримаємо значення всіх метаполів коментаря з ID = 4. $comment_fields = get_fields( 'comment_4'); // Отримаємо значення всіх метаполів всіх сторінок опцій, створених ACF. $option_fields = get_fields('options'); // Або так. $option_fields = get_fields('option');
#3 Отримаємо значення метаполів для поточного запису без форматування
У цьому прикладі показано, як отримати всі поля (ім’я та значення) без форматування.
Форматування стосується того, як змінюються значення після завантаження з бази даних. Наприклад, значення поля зображення зберігається у базі даних як просто ID вкладення, але може бути повернуто у вигляді URL-адреси, залежно від параметрів поля.
У деяких випадках може бути корисно переконатися, що повертається лише необроблене значення, незалежно від параметрів поля. Для цього ми використовуємо параметр $format_value
.
$fields = get_fields(123, false);
список змін
З версії 3.6 | Введено. |