tutorial - drupal 7.59 download
Drupal 7, creación de artilugios con ImageField y un Textarea (4)
¿Puede alguien ayudarme a descubrir cómo puedo crear un widget (Field API) que contendrá una imagen (quiero ser un ImageField) y un área de texto en Drupal 7? Desafortunadamente no puedo encontrar ningún tutorial sobre cómo hacer esto en google. ¡Gracias!
No hay ningún tutorial como tal que yo sepa, pero eche un vistazo al Módulo de ejemplos de Drupal , hay un módulo llamado field_example
con toda la información que necesita.
En un nivel muy básico, quieres hacer esto:
- Implemente hook_field_schema () en el archivo
.install
su módulo para definir qué columnas se.install
en su tabla de campo (probablemente ID de archivo (fid
), texto alternativo para la imagen, texto de título para la imagen y el contenido del área de texto en Tu caso). - Implemente hook_field_info () para definir su tipo de campo.
- Implemente hook_field_is_empty () para proporcionar una forma de que Drupal sepa que una instancia particular de un campo está vacía y se puede eliminar cuando se guarda la entidad.
- Implemente hook_field_formatter_info () para decirle a Drupal las diferentes formas en que se puede mostrar el contenido de su campo.
- Implemente hook_field_formatter_view para definir exactamente cómo se generarán los formateadores de campo definidos en el paso 4.
- Implemente hook_field_widget_info para definir los diferentes widgets de entrada para su campo.
- Implemente hook_field_widget_form para definir los elementos que conformarán el widget para su campo.
Una vez que hayas saltado todos esos aros (en realidad no lleva mucho tiempo implementarlos, la mayoría de las funciones son solo unas pocas líneas de código), habilita el módulo y comienza a agregar tu nuevo campo a las entidades.
deberías comenzar desde este 2 gancho para crear el widget. entonces deberías comenzar a crear el campo compuesto
hook_field_widget_info () hook_field_widget_form (& $ form, & $ form_state, $ field, $ instance, $ langcode, $ items, $ delta, $ element)
aquí hay algunos enlaces para crear un campo y un widget personalizados http://www.phase2technology.com/node/1495/ http://drupal.org/project/dnd_character
Perdón por no cerrar esto. pero la verdadera respuesta a esto es usar el módulo Field Collection - drupal.org/project/field_collection. Usted agrega múltiples campos a esto. Cuando hice esta pregunta, era nuevo para D7 y en D6 tuvimos que escribir esto a mano. gran módulo!
Intente echar un vistazo a este tutorial . La mayoría de los otros que el escritor se concentra en sonar inteligente, este tiene capturas de pantalla y es muy claro y conciso.