Puede usar el siguiente fragmento para verificar si un campo está vacío.
$info = field_info_field($field_name);
$function = $info['module'] . '_field_is_empty';
if (function_exists($function)) {
$value = field_get_items('node', $node, $field_name);
$is_empty = $function($value[0], $info);
}
Este código es más seguro, ya que los diferentes campos se consideran vacíos en diferentes condiciones. Vea, por ejemplo, la diferencia entre file_field_is_empty () , number_field_is_empty () y taxonomy_field_is_empty () : taxonomy_field_is_empty()
verifica la propiedad tid del $item
parámetro, mientras number_field_is_empty()
verifica la propiedad de valor del mismo parámetro. Los campos personalizados pueden requerir que se verifique una condición más compleja para considerar que el campo está vacío.
La descripción de hook_field_is_empty () dada en la documentación es la siguiente:
Defina qué constituye un elemento vacío para un tipo de campo.