Tengo un tipo de contenido específico en drupal6. Quiero implementar un enlace, que oculta el campo del cuerpo de ese tipo de contenido desde el formulario de agregar, pero no desde el formulario de edición. ¿Cómo puedo hacer eso?Cómo ocultar un campo en formato drupal
Respuesta
Puede usar hook_form_alter. Que puede modificar mediante programación los contenidos de la compilación de la API de formulario. Esto le proporciona la matriz completa de $ de la cual puede simplemente unset($form['the_field_you_dont_want']);
.
Pero la forma más fácil de deshacerse del campo del cuerpo es en el tipo de contenido de edición hay un campo etiquetado 'Etiqueta de campo del cuerpo:' simplemente deje esto en blanco y se omitirá el campo del cuerpo.
¿Implementaste el tipo de contenido dentro de un módulo (usando hook_node_info)? Si es así, establezca el atributo has_body en falso.
unset parece destruir el valor también, al igual que la propiedad #access
. sólo tiene que utilizar esto para ocultar un campo (en este caso una referencia si se ha prefijado mediante la URL:. La solución de moon.watcher Aquí estoy repitiendo
$form['field_reference']['#prefix'] = "<div class='hide'>";
$form['field_reference']['#suffix'] = "</div>";
La solución encontrada aquí https://drupal.stackexchange.com/questions/11237/hide-field-in-node-add-page funciona muy bien para mí:
function test_remove_filed_form_alter(&$form, &$form_state) {
if (arg(0) == 'node' && arg(1) == 'add') {
$form['field_test']['#access'] = 0;
}
}
la desventaja del uso de unset() es que se eliminará por completo el campo y no se puede más adelante como, por ejemplo, en presave nodo. en mi caso, yo sólo quería eliminar el campo de la formulario en el primer momento, pero quería llenarlo más tarde, antes de guardar el nodo. La solución en el enlace de arriba funciona perfecto para mí para esto razón.
- 1. Drupal: Cómo hacer que un campo dependiente usando CTools
- 2. Drupal 7 cómo representar el campo personalizado
- 3. Grupos de campo/conjuntos de campo condicionales en Drupal 7
- 4. Cambio de Drupal 7 Enviado por formato
- 5. Ocultar campo de año en Android DatePicker?
- 6. Android - Ocultar campo de fecha en datepickerdialog
- 7. ¿Cómo se usa un tipo de datos personalizado como un campo en drupal 7?
- 8. Diseñando botones de radio individuales en formato drupal
- 9. Cómo ocultar campo de texto en HTML File Cargar
- 10. Agregar campo CCK al formulario personalizado en Drupal 7
- 11. Drupal 7: Acceso al campo de nodo personalizado en page.tpl.php
- 12. Cómo ocultar un campo de clave principal en un formulario de Django
- 13. Ocultar campo de texto y etiqueta asociado
- 14. ¿Es posible ocultar un campo (o simplemente manipular/ocultar desde autocompletar) dentro de su propia clase?
- 15. ¿Cómo ocultar el campo de texto con la etiqueta?
- 16. drupal widget de campo no guarda los datos enviados
- 17. ¿Cómo se puede agregar un formato de fecha personalizado de Drupal?
- 18. Crear campo de fecha con solo mes y año - Drupal
- 19. convertir texto de campo a List (texto) drupal 7
- 20. jqGrid: cómo ocultar un campo de búsqueda específico en la barra de herramientas de búsqueda
- 21. tiempo WPF Datagrid formato hh: mm campo
- 22. Cómo crear un campo de entrada de contraseña usando Tkinter
- 23. Django admin, ocultar + signo más en campo de clave externa
- 24. Cómo escribir informes personalizados en Drupal
- 25. ¿hay un módulo drupal que permita un chat en vivo en un sitio drupal?
- 26. Drupal Dynamic Select en un Formulario
- 27. ¿Cómo funciona AOP en Drupal?
- 28. ¿Cómo instalo Drupal en Ubuntu?
- 29. Drupal 7 Views - ¿Cómo acceder a la variable $ fila sin formato en una plantilla personalizada?
- 30. Cómo aplicar formato condicional en un GridView
Hice esto también, pero luego, si el usuario conoce CSS, puede ver los campos, y si lo hace en la página de edición de usuario, incluso puede editar los campos. Es una implementación estúpida, porque '# access' = 0 no debería destruirla. Tal vez una solicitud de función para Drupal 8? :) –