field_default_view
- Versions
- 7
field_default_view($obj_type, $object, $field, $instance, $langcode, $items, $build_mode)
Default field 'view' operation.
See also
Code
modules/field/field.default.inc, line 131
<?php
function field_default_view($obj_type, $object, $field, $instance, $langcode, $items, $build_mode) {
list($id, $vid, $bundle) = entity_extract_ids($obj_type, $object);
$addition = array();
$display = $instance['display'][$build_mode];
if ($display['type'] !== 'hidden') {
// We never want to index fields labels.
if ($build_mode == 'search_index') {
$display['label'] = 'hidden';
}
// Calling the formatter function through module_invoke() can have a
// performance impact on pages with many fields and values.
$function = $display['module'] . '_field_formatter';
if (function_exists($function)) {
$elements = $function($obj_type, $object, $field, $instance, $langcode, $items, $display);
}
if ($elements) {
$info = array(
'#theme' => 'field',
'#weight' => $display['weight'],
'#title' => t($instance['label']),
'#access' => field_access('view', $field, $obj_type, $object),
'#label_display' => $display['label'],
'#build_mode' => $build_mode,
'#language' => $langcode,
'#field_name' => $field['field_name'],
'#field_type' => $field['type'],
'#object_type' => $obj_type,
'#bundle' => $bundle,
'#object' => $object,
'#items' => $items,
'#formatter' => $display['type']
);
$addition[$field['field_name']] = array_merge($info, $elements);
}
}
return $addition;
}
?>Login or register to post comments 