WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru
функция не описана

get_field_objects() ACF 3.6

This function will return an array containing all the custom field objects for a specific post_id. The function is not very elegant and wastes a lot of PHP memory / SQL queries if you are not using all the fields / values.

Хуков нет.

Возвращает

(Массив) associative. array where field name => field

Использование

get_field_objects( $post_id, $format_value, $load_value );
$post_id **
-
По умолчанию: false
$format_value **
-
По умолчанию: true
$load_value **
-
По умолчанию: true

Список изменений

С версии 3.6 Введена.

Код get_field_objects() ACF 5.9.1

<?php
function get_field_objects( $post_id = false, $format_value = true, $load_value = true ) {
	
	// init
	acf_init();
	
	// validate post_id
	$post_id = acf_get_valid_post_id( $post_id );
	
	// get meta
	$meta = acf_get_meta( $post_id );
	
	// bail early if no meta
	if( empty($meta) ) return false;
	
	// populate vars
	$fields = array();
	foreach( $meta as $key => $value ) {
		
		// bail if reference key does not exist
		if( !isset($meta["_$key"]) ) continue;
		
		// get field
		$field = acf_get_field($meta["_$key"]);
		
		// bail early if no field, or if the field's name is different to $key
		// - solves problem where sub fields (and clone fields) are incorrectly allowed
		if( !$field || $field['name'] !== $key ) continue;
		
		// load value
		if( $load_value ) {
			$field['value'] = acf_get_value( $post_id, $field );
		}
		
		// format value
		if( $format_value ) {
			$field['value'] = acf_format_value( $field['value'], $post_id, $field );
		}
		
		// append to $value
		$fields[ $key ] = $field;
	}
 	
	// no value
	if( empty($fields) ) return false;
	
	// return
	return $fields;
}