Me gustaría agregar un atributo de estilo a cada campo de título en mi vista. He creado un campo para un color. Traté de reescribir el resultado así:
<h2 style="color: [field_color];">[title_1]</h2>
Pero el atributo de estilo será eliminado. Estoy usando Drupal 7.
Cualquier ayuda apreciada.
Respuestas:
Puede establecer una clase en el campo de título usando Configuración de estilo como se muestra a continuación en la pantalla. Puede reemplazar los tokens de usuario en la configuración de estilo para establecer la clase en el campo de título.
Usando javascript pequeño o jquery, lea la clase del campo de título y establezca el color igual que el nombre de la clase usando la propiedad CSS .
fuente
Puede crear un tpl para este campo (ejemplo: views-view-field-MY-VIEW-NAME-page.tpl.php), en este tpl puede agregar el token escribiendo esto:
fuente
También tuve que incluir el valor de un campo como un color en línea para un campo en particular. Después de navegar por la web para encontrar una solución fácil de personalizar, terminé haciendo esto:
Reescribe la función hook_preprocess_views_view_field () de esta manera:
Como puede ver, he agregado estas líneas:
Y cambie la línea debajo de:
fuente
agregue un nombre en el campo anil sugerido, luego abra style.css en su carpeta de temas y escriba ".my-css-name" seguido de los resultados deseados de css como:
.my-css-name {color: rojo; fondo: verde; }
fuente
Solo estoy haciendo algo similar y esto es lo que hice:
1- Crea una vista con campos de color y título.
2- Cree un "views-view-fields.tpl" personalizado para esa vista. (Una plantilla personalizada solo para el campo de color me mostró un error)
3- En la
field->content
línea agrega / reemplaza lo que necesitas ...<h2 style="color: #<?php print $field->content; ?>">
/ / / / De ahora en adelante, no lo probé, pero debería funcionar bien / / / /
4- Excluir el campo del título y mostrarlo en el encabezado / grupo
5- Cree un "views-view-unformatted.tpl" personalizado para esa vista.
6- En esta vista agregamos
<?php print $title; ?></h2>
después<?php print $row; ?>
. (agregamos el título y cerramos la etiqueta H abierta en la primera plantilla)ÚLTIMA EDICIÓN:
Simplemente puede usar las vistas PHP para imprimir todo lo que necesita y el estilo no se filtrará.
fuente
Tuve este mismo problema y lo resolví creando una plantilla llamada
En mi caso, el código que usé para crear el HTML que necesitaba era:
Habilitar el módulo Devel y usar
en el archivo de plantilla fue MUY útil. No podría haber descubierto esto sin él.
fuente
La solución más fácil que pude encontrar fue insertar el valor como un atributo de datos. Luego, en mi JavaScript, tomo el valor del campo de datos y actualizo el CSS para reflejar el cambio.
fuente