Estoy creando un módulo Drupal 7 para crear un tipo de campo a medida. He implementado todos los ganchos necesarios. Mi hook_field_formatter_view()
función se ve así:
function MYMODULE_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
$element = array();
switch ($display['type']) {
case 'default':
foreach ($items as $delta => $item) {
$element[$delta] = array(
'#theme' => 'test',
'#item' => $item,
);
}
break;
}
return $element;
}
Luego he definido la theme()
función a continuación:
function theme_test($variables) {
return '<h1>Hello World</h1>';
}
Pero cuando veo la página no sale nada. Si miro las entradas de registro recientes, veo este mensaje:
Theme key 'test' not found.
Si cambio mi valor de MYMODULE_field_formatter_view render array '#theme' a una función de tema integrada como 'item_list', funciona. Pero por alguna razón, mi función de tema personalizado no se está recogiendo.
He reconstruido el registro de temas cientos de veces, así como borrado los cachés.