toke patterns instalar drupal drupal-7 drupal-modules drupal-theming

patterns - toke drupal



Drupal 7: ocultar etiquetas con campos vacĂ­os al ver un nodo (3)

De forma predeterminada, las etiquetas de los campos vacíos están ocultas, ¿tal vez todavía hay un "espacio sin interrupciones" o algún otro residuo en el campo? Debe verificar la diferencia entre un nodo existente donde ocurre el problema y un nuevo nodo donde no toque el campo en particular.

Establecer la visualización de las etiquetas no deseadas ocultas en nl / admin / structure / types / manage / selected_content_type / display

¿Cómo oculto las etiquetas que tienen campos vacíos cuando veo el nodo real de un cierto tipo de contenido?

Realmente agradecería la ayuda de cualquier persona, gracias por su tiempo.


Otra forma de lograr esto es mediante el uso de un archivo de plantilla personalizado que se aplicaría a todos los nodos de ese tipo de contenido.

Asegúrese de que node.tpl.php exista primero en su directorio sites/all/themes/[mytheme] . Esta plantilla debe existir antes de poder llamar a otras plantillas personalizadas.

Haga una copia de su node.tpl.php y asígnele el nombre node--[contenttype].tpl.php (sin los corchetes).

Si tiene habilitado el módulo Devel , puede lanzar un dpm($content); en el archivo para averiguar el nombre del campo que intentas ocultar. O podría mirar el tipo de contenido en sí.

Una vez que tenga el nombre del campo, ahora puede insertar este código antes de print render($content); declaración:

if (empty($content[''my_field''])) { unset($content[''my_field'']); }

Borre la caché y su campo solo aparecerá si hay un valor almacenado.


Me gustaría corregir la primera respuesta. En node.tpl.php debemos verificar #markup en lugar de field array:

if (empty($content[''field_vac_req''][0][''#markup''])) { unset($content[''field_vac_req'']); }

en lugar de

if (empty($content[''my_field''])) ...