Filtrar Favoritos

:information_source: Resumen Permite a los usuarios guardar sus filtros favoritos y, opcionalmente, definir filtros predeterminados
:eyeglasses: Vista previa Theme Creator
:warning: El componente utiliza el campo de usuario personalizado existente para la entrada de edad. Después de probar la personalización, es posible que desee borrar el campo en sus preferencias.
:hammer_and_wrench: Repositorio GitHub - moin-Jana/favorite-filter: Allow users to save their favorite filters and optionally define default filters
:question: Guía de instalación Cómo instalar un tema o componente de tema
:open_book: ¿Nuevo en los temas de Discourse? Guía para principiantes para usar temas de Discourse

Instalar este componente de tema

Filtros Favoritos añade atajos de filtro personalizables encima del filtro de temas. Los administradores pueden proporcionar botones de filtro predeterminados, y los usuarios pueden crear y personalizar sus propios filtros favoritos.

Para guardar el filtro aplicado actualmente en tus favoritos, haz clic en el icono de estrella, introduce la etiqueta y, opcionalmente, elige un icono o emoji.

También puedes cambiar el orden, eliminar y editar tus favoritos actuales

Configuración

Filtros personalizados

Un componente de tema no puede crear nuevos campos en la base de datos, por lo que para permitir a los usuarios guardar sus filtros favoritos, necesitas crear un campo de usuario personalizado donde se pueda almacenar esta información. Por lo tanto,

  • abre la configuración de campos de usuario. Puedes encontrarla en la sección de comunidad de tu barra lateral de administrador.
  • haz clic en “Añadir campo de usuario”.
  • elige “Texto” como tipo de campo e introduce un nombre y descripción para el campo.
  • deja el campo como opcional.
  • habilita la edición después del registro, pero no lo muestres en ningún lugar.
Captura de pantalla de la configuración

Después de guardar el campo de usuario, haz clic en el botón de editar y comprueba la URL. Será algo como /admin/config/user-fields/12/edit. El número es el ID del campo de usuario. Esto es lo que introduces en la configuración custom user field ID del componente. El componente ocultará el campo de usuario de las preferencias del perfil del usuario para evitar entradas inválidas.

Opcionalmente, también puedes restringir la creación y el guardado de filtros favoritos a grupos de usuarios específicos con la configuración custom favorite filters allowed groups.

Filtros predeterminados

La forma más fácil de configurar filtros predeterminados es crearlos como tus propios favoritos de filtro utilizando la interfaz de filtro e insertar el valor del campo de usuario en la configuración. Por lo tanto, puedes hacer visible el campo de usuario en las preferencias para los usuarios administradores (show for admin).

Luego puedes copiar el contenido del campo de usuario en la configuración default favorites.

Los filtros predeterminados también se pueden restringir a ciertos grupos a través de default favorite filters groups. Esto es útil, por ejemplo, si muchos filtros no funcionan para usuarios no registrados (porque no tienen marcadores o acceso a ciertas categorías). De manera similar, puedes configurar filtros específicos como predeterminados para el personal, mientras que los usuarios regulares pueden crear sus propios filtros favoritos sin ver predeterminados que no son relevantes para ellos.

12 Me gusta

¡Esto se ve genial @Moin!

4 Me gusta

¡Lo coloqué fácilmente y esto es absolutamente genial!

2 Me gusta

Este es un hack fascinante. Realmente quiero crear soporte de primera parte para la configuración de temas de usuario algún día, entonces no necesitarás esto. Me encanta que hayas encontrado una manera de sortear esta limitación.

3 Me gusta

Gracias. Pero no fue mi idea. Esto se ha resuelto de esta manera varias veces antes. Así de memoria, se me ocurren estos temas:

2 Me gusta