Você está correto de que este código está desatualizado porque substituímos o sistema de widgets. Aqui estão algumas informações sobre isso do ano passado: Upcoming post stream changes - How to prepare themes and plugins .
Ainda é possível fazer isso funcionar, mas você terá que usar um Glimmer Component. Poderia ser algo assim:
import Component from "@glimmer/component";
import { apiInitializer } from "discourse/lib/api";
class UserFieldBadge extends Component {
static shouldRender(args) {
return !!args.post?.user_custom_fields?.user_field_4;
}
<template>
<span class="poster-user-field">
{{@post.user_custom_fields.user_field_4}}
</span>
</template>
}
export default apiInitializer((api) => {
api.renderAfterWrapperOutlet("post-meta-data-poster-name", UserFieldBadge);
});
Lembre-se de que você precisará corresponder user_field_4 neste código ao campo real que deseja exibir.
Deixarei para outros modificarem isso para que possa mostrar TODOS os campos de usuário personalizados públicos. ![]()