Contenido reciente

Esconder campo CCK del formulario

Hoy he necesitado esconder un campo CCK en D6 y no quería escribir un módulo a parte. No quería implementar hook_form_alter en ninguno de los módulos (custom) existentes.

La respuesta ha sido sencilla, Rules.

Lo primero que necesitamos es descargar el proyecto rules Rules y activar los módulos:

  • Rules
  • Rules Administration UI
  • Rules Forms support

O su equivalente en drush:

  drush dl rules && drush en -y rules, rules_admin, rules_form

Activar el soporte para el formulario de nodo

Lo siguiente es activar el soporte de Rules para el formulario de nuestro tipo de contenido. En mi caso el tipo de contenido se llama Coupon. Para hacerlo tenemos que navegar hasta Administer > Rules > Form Events (admin/rules/forms) y marcar la casilla Enable event activation messages on forms. Esto nos proporcionará un enlace de activación en todos los formularios que visitemos (hasta que desactivemos esta opción).

Vamos, por tanto, al formulario de creación (o edición) de nuestro tipo de contenido (node/add/coupon). Y clicamos en el enlace para activarlo Activate events for coupon_node_form. Si hacemos esto bien tendremos disponibles los eventos de ese formulario en concreto para disparar reglas.

Ahora podemos volver a Administer > Rules > Form Events y desmarcar la casilla Enable event activation messages on forms.

Crear la nueva regla

Para crear una regla nueva vamos hasta Administer > Rules > Triggered Rules > Add a new rule (admin/rules/trigger/add) y seleccionar como evento Coupon node form is being build (obviamente con vuestro tipo de contenido en vez de Coupon). Rellenamos el resto de valores de la regla y listos. Es importante dejar marcada la casilla que activa la regla.

Configurar la regla

En el formulario de Rule elements añadimos una nueva acción con el enlace Add a new action. Seleccionamos Hide an element of the form y clicamos en Siguiente. En Form element ID introducimos el nombre de nuestro campo (en mi caso era field_coupon_profile).

Fin de la historia.

Necesita un poquito de configuración, pero vale la pena explorar esta vía para esconder un campo CCK.

Gracias a Neven Jurkovic por la fotografía y por publicar en CC.

Comentarios

  • Enviado por existir (not verified) el 12/07/2011 - 20:12.

    En todo caso, me parece absurdo el mandato de amar por obligación; si amo porque me obligan, entonces no amo en absoluto.mortgage calculator

Deja un comentario

El contenido de este campo se mantiene privado y no se mostrará públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.
  • HTML tags will be transformed to conform to HTML standards.

Más información sobre opciones de formato

By submitting this form, you accept the Mollom privacy policy.