Componente de tema «Botón de entrada personalizada»

¿Podría un miembro de @staff considerar mover esto a Customization > Theme component? No soy capaz de crear nuevos temas allí.

:page_facing_up: Resumen Discourse Custom Post Button convierte los enlaces dentro de las publicaciones de Discourse en botones con estilo.
:hammer_and_wrench: Repositorio github.com/koloki-co/discourse-custom-post-button
:question: Guía de instalación Instalación de un tema o componente de tema
:books: ¿Nuevo en temas de Discourse? Guía para principiantes sobre el uso de temas de Discourse

Instalar este componente de tema

Este es un componente de tema de la comunidad mantenido por Koloki Ltd. No es un componente oficial de Discourse. Está en fase alfa, por lo que es posible que haya errores. Por favor, reporta errores y solicita funciones en el repositorio de GitHub.

Capturas de pantalla

Botones

Un caso de uso específico: un botón de ‘Pregúntanos por mensaje privado’

Funciones

  • Convierte un enlace normal en un botón en cualquier parte de un tema o publicación usando [wrap].
  • Proporciona un color de fondo predeterminado, radio de borde, relleno, peso de la fuente, color del texto y opacidad al pasar el cursor, configurables a nivel de TC (componente de tema); de lo contrario, utiliza los valores predeterminados de tu sitio.
  • Permite que un botón individual anule el color de fondo predeterminado.
  • Admite texto explicativo junto a un botón.
  • Mantiene el contenido subyacente como un enlace normal, de modo que los botones pueden abrir páginas externas o rutas internas de Discourse, como /new-message.

IMPORTANTE: Si este TC está instalado, cualquier usuario de tu foro puede crear estos botones. Para restringir la capacidad de crear botones a ciertos usuarios se requeriría un Plugin completo. Sin embargo, en la práctica, los usuarios necesitan saber que está instalado y cómo crear un botón, por lo que sospecho que pocos sabrán realmente cómo hacerlo. También puedes usar Palabras vigiladas para filtrar publicaciones que contengan [wrap=custom-button] para su aprobación, lo que restringiría la funcionalidad.

Instalación

En Administración > Apariencia > Temas y componentes, abre la pestaña Componentes, selecciona Instalar y elige Instalar desde una URL de repositorio Git. Usa:

https://github.com/koloki-co/discourse-custom-post-button

Después de la instalación, agrega el componente a cada tema activo donde deba estar disponible.

Uso

Botón básico

Se utilizará el color predeterminado del botón desde la configuración del TC

[wrap=custom-button][Texto de tu botón personalizado](https://example.com)[/wrap]

Configuración de color por botón

[wrap=custom-button color=#7CC146][Texto de tu botón personalizado](https://example.com)[/wrap]

Botón seguido de texto explicativo

[wrap=custom-button][Texto de tu botón personalizado](https://example.com)[/wrap]
[wrap=text-after-button]Texto explicativo adicional[/wrap] (en una nueva línea)

Abrir un mensaje privado a un grupo

(Nota: Esto utiliza la funcionalidad integrada de Discourse para abrir el compositor con texto prellenado; esa parte de la funcionalidad no proviene del Componente de Tema, solo lo uso para demostrar un posible caso de uso. Requiere que la configuración del grupo permita mensajes privados a ese grupo.)

[wrap=custom-button][Pregúntanos](/new-message?groupname=somegroup&title=Aask%20Us&body=Please%20type%20your%20question%20here.)[/wrap]

Usa el name slugificado del grupo en lugar de su ‘Nombre completo’ y codifica los valores de los parámetros en la URL. La configuración ¿Quién puede enviar mensajes a este grupo? del grupo sigue determinando quién puede abrir un compositor dirigido, y los visitantes no iniciados se les pedirá que inicien sesión.

Configuración

Ajuste Propósito
button_default_color Color de fondo y borde predeterminado del botón
button_border_radius Radio de las esquinas del botón
button_padding Espacio alrededor de la etiqueta del botón
button_font_weight Peso de la fuente de la etiqueta del botón
button_text_color Color de la etiqueta del botón
button_hover_opacity Opacidad del botón al pasar el cursor

El componente también expone una configuración svg_icons para los iconos de tema disponibles, pero actualmente no inserta un icono en un botón de publicación. Añadiré esa función si hay demanda de ella.

Notas

  • El componente solo cambia la presentación. Los botones siguen siendo enlaces y los permisos de destino no cambian.
  • Los clientes de correo electrónico y otros contextos que no cargan el tema activo de Discourse pueden mostrar el enlace subyacente sin el estilo de botón.
  • El componente está licenciado bajo la Licencia MIT.

El componente creció a partir del mismo patrón útil de [wrap] discutido en Cómo incrustar un botón en una publicación de tema.

3 Me gusta

¿Has unido al grupo @theme_authors?

5 Me gusta

Solicitud de acceso enviada, gracias

2 Me gusta

Te he aceptado y he movido el tema de inmediato :slight_smile:

1 me gusta