Claves de interpolación para personalizar plantillas de texto y correos electrónicos del sistema

:bookmark: Esta guía proporciona una descripción general detallada de las claves de interpolación utilizadas para personalizar las plantillas de texto y correo electrónico del sistema en Discourse.

:person_raising_hand: Nivel de usuario requerido: Administrador

Mientras Personaliza el texto en Discourse o Personaliza plantillas de correo electrónico específicas, es posible que hayas notado que hay variables de marcador de posición disponibles en algunas plantillas.

En Discourse, las llamamos Claves de Interpolación.

Entendiendo las claves de interpolación

Las claves de interpolación son marcadores de posición disponibles en ciertas plantillas de Discourse. Te permiten insertar contenido dinámico en tus plantillas de texto y correo electrónico.

Ejemplo de Claves de Interpolación para la plantilla de correo electrónico Cuenta Creada:

Estas claves, como %{username} o %{site_name}, se reemplazarán con datos reales cuando se envíe el correo electrónico.

En general, estos marcadores de posición se pueden mover dentro de la plantilla a la que pertenecen, pero solo están disponibles en esa plantilla y no se pueden mover a plantillas diferentes, ya que todos están respaldados por código del servidor que corresponde a la plantilla correspondiente.

Sin embargo, hay algunas Claves de Interpolación adicionales permitidas en las plantillas de texto y correo electrónico.

Claves de Interpolación Generales

Aquí hay una lista de algunas claves de interpolación generales que puedes usar en todas las plantillas de correo electrónico:

  • username: El nombre de usuario del usuario
  • name: El nombre completo del usuario
  • name_or_username: El nombre completo o el nombre de usuario del usuario

También puedes usar todas las claves de system_messages.welcome_user en personalizaciones de plantillas de texto y correo electrónico siempre que tengan subclaves subject_template y text_body_template, ya que todas deben ser manejadas por la clase SystemMessage (Consulta system_message.rb para ver el código de Discourse relacionado).

Para obtener una lista completa de las claves de interpolación personalizadas permitidas, consulta ALLOWED_CUSTOM_INTERPOLATION_KEYS en el código fuente de Discourse para translation_override.rb.

9 Me gusta

Eso no es correcto. Actualmente, eso solo funciona para system_messages.welcome_user, pero podríamos extenderlo a todas las demás claves. Esto es material pr-welcome.

4 Me gusta

Gracias por señalarlo, esto se ha actualizado en la guía.

2 Me gusta

Hola!

¿Cómo puedo modificar el valor de algunas de estas claves de interpolación? Por ejemplo, %{search_answer}

¡Gracias!

¡Hola!
Dice que esta clave no es válida:

P.D.
Estoy reemplazando en el texto, no en el correo electrónico (¿hace alguna diferencia?). ¡Gracias!

No creo que sean globales y de uso gratuito en todas partes.

1 me gusta

¡Gracias @Jagster! Las estoy usando en la personalización de texto, así que, según la publicación del tema, ¿se supone que funciona?

El tema en realidad trata sobre plantillas de correo electrónico y esos textos. Por lo tanto, no puedes usar claves de interpolación fuera del contexto adecuado. Es por eso que tenemos otras claves para correos electrónicos, otras para algunas indicaciones de IA, etc.

Claro, los complementos pueden hacer muchas cosas, pero esta vez no vienen listas para usar.

Y descargo de responsabilidad: soy solo otro usuario final y también puedo estar terriblemente equivocado. Pero estoy bastante seguro de que tengo razón, y por eso tu intento no funciona :man_shrugging:

Okay, muchas gracias por tu apoyo. Parece que ni siquiera funciona cuando se usa en una plantilla de correo electrónico:

Mi apuesta es que puedes usar %{username} en las plantillas de “El usuario hizo…”, y todas las demás plantillas no lo admiten.

Pero ya veremos mañana, cuando todos los gurús estén despiertos.