views – Agregar clase al campo de vista "vínculo al contenido"

Pregunta:

Estoy usando Drupal 8 y creando una view . Tengo un campo, que resulta ser un campo de title , y lo configuré para link to content . Me gustaría saber cómo puedo simplemente agregar una clase btn a la etiqueta de anchor . En este momento, la salida se ve así:

<a href="/node/{id}" hreflang="en">... custom text ...</a>

Sé que puedo usar la función de vista Rewrite Results para lograr esto, sin embargo, necesito más poder que eso porque estoy creando un tema para un cliente. El tema debe ser más genérico, por lo que debo poder lograr esto en una plantilla. ¿Hay alguna sugerencia / gancho de plantilla que me permita anular esto en una plantilla como .../templates/views-view-field--link.html.twig ? ¿O hay una función de tema que podría usar para anular el marcado agregando la clase que me gustaría?

He considerado usar la plantilla views-view-field.html.twig y anular el tipo node_view para lograr esto, pero no estoy seguro de cómo hacerlo mientras se mantiene el texto personalizado que un usuario podría estar usando porque es realmente difícil de depurar las opciones del field .

Editar

Olvidé mencionar que esto debe depender del core Drupal. No puedo esperar que el usuario instale módulos adicionales para que funcione.

Respuesta:

Junto con la sugerencia de Wims, sugeriría (como suelo hacer) omitir los campos en las vistas y representar el modo de vista de la entidad en cuestión. Por lo general, esto es suficiente en la mayoría de los casos si se trata de una vista basada en una presentación y no una vista de estilo "informe" (donde los registros están en formato de tabla y los campos sirven como datos de celda).

Luego, proporcione la plantilla de ramitas para los modos de vista, donde el título está vinculado, y puede agregar la (s) clase (s) allí. Ahora, cuando usa ese modo de vista para renderizar en Vistas, usa una plantilla y es consistente, y las Vistas que dependen de entidades de renderizado se vuelven más fáciles de mantener y más rápidas de configurar.

Aquí hay un artículo que explica la diferencia y el beneficio: https://www.amazeelabs.com/en/blog/views-field-rewriting-to-views-modes

Dicho esto, no, los enlaces en sí mismos no tienen un archivo twig (donde vería el marcado de la etiqueta de anclaje). He visto la opción |merge antes de que Wim se vincule, aunque no he logrado que funcione en 8.2.5.

También puede implementar theme_preprocess_field y proporcionar la clase a los atributos antes de que se procese, aunque, como puede imaginar, si tiene muchos de estos, será algo de trabajo.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım