Tôi đã nhìn thấy làm thế nào để có được danh sách các lĩnh vực của tổ chức và bó với field_info_instances()
và field_info_field()
, nhưng tôi không nhìn thấy một cách để có được tất cả các lĩnh vực của một loại cụ thể.
Tôi đã có thể nấu nó lên để làm chính xác những gì tôi muốn:
function field_get_fields_of_type($type) {
$fields_info = field_info_instances();
$return = array();
foreach ($fields_info as $entity => $bundles) {
foreach ($bundles as $bundle => $fields) {
foreach ($fields as $field_name => $info) {
$more_info_because_type_isnt_included = field_info_field($field_name);
if ( $more_info_because_type_isnt_included['type'] == $type) {
$return[$field_name] = $more_info_because_type_isnt_included;
}
}
}
}
return $return;
}
dpm(field_get_fields_of_type('entityreference')); // prints out all entityreference fields
Nhưng đó dường như là rất nhiều mã, và rất nhiều vòng lặp để có được thứ gì đó có lẽ có thể truy cập được thông qua API trường.
Có ai biết chức năng API trường sẽ lấy dữ liệu tôi đang tìm kiếm hiệu quả hơn không?