La siguiente clave de interpolación no es válida: site_name
Creo que “Site_text” no está disponible. Cuando intento editar el texto en /admin/customize/site_texts/js.welcome_banner.header.new_members?locale=en veo que solo está disponible el nombre.
Creo que
site_name solo está disponible para usuarios anónimos. Supongo que la descripción necesita una actualización.
De acuerdo, gracias por la información. Por ahora estoy usando CSS para poner el nombre del sitio. Solo estaba teniendo problemas para subrayarlo en el texto de bienvenida.
Por alguna razón, solo %site_name funciona para los visitantes anónimos.
Me gustaría hacer:
¡Bienvenido, %{preferred_display_name}, a %{site_name}!
Pero no es posible hacer esto, está dificultando los ajustes de subrayado/CSS en esta área.
Eso tiene sentido. No iniciaron sesión, así que no sabemos quiénes son. No hay un nombre para ellos en la base de datos.
Es como cuando alguien que no conoces toca el timbre de tu casa; no podrás saludarlo por su nombre hasta que se presente.
Sí, pero me gustaría usar ese %site_name también para los usuarios registrados ![]()
¡Gracias por reportarlo! Parece que prometí de más sobre qué variables estaban disponibles… Tengo una actualización en camino que corregirá esto.
¿Así que todavía no podemos agregar %{site_name} si el usuario ha iniciado sesión?
Mmm… ciertamente parece ser así:
Supongo que podrías mostrar el nombre del sitio con un Componente de Tema haciendo una solicitud a
/about.json y obteniendo el título del sitio (Revisé el servicio site y no encontré nada sobre el título del sitio).
El servicio siteSetting podría funcionar para obtener el valor de la configuración del sitio title
Investigué esto, el impedimento aquí no es acceder al valor de título. Es que el backend valida las traducciones extrayendo claves de interpolación válidas de las cadenas del idioma predeterminado.
Entonces, cuando %{site_name} no está en la cadena predeterminada, el backend lo rechazará como una “clave de interpolación no válida”.
No sé cuál es la idea de @NateDhaliwal. Solo quería señalar una alternativa a una solicitud adicional a /about.json.
Creo que un componente personalizado que copie el banner de bienvenida pero proporcione la clave site_name para todos los textos sería el camino a seguir.
O una PR que añada site_name como clave disponible para los textos para los usuarios con sesión iniciada en el núcleo.
get headerText() {
if (!this.currentUser) {
return i18n("welcome_banner.header.anonymous_members", {
site_name: this.siteSettings.title,
});
}
const isNewUser = !this.currentUser.previous_visit_at;
const key = isNewUser
? "welcome_banner.header.new_members"
: "welcome_banner.header.logged_in_members";
return i18n(key, {
preferred_display_name: sanitize(
prioritizeNameFallback(this.currentUser.name, this.currentUser.username)
),
+ site_name: this.siteSettings.title,
});
}
@hipp0 ¡Gracias de nuevo por plantear esto! Hemos implementado una actualización que hace que la variable site_name esté disponible en los tres campos de encabezado:




