Model de resposta

||||\n-|-|-|\n:discourse2: | Resumo | O Reply Template (Modelo de Resposta) permite reutilizar facilmente parte de uma publicação em uma resposta ou em um novo tópico.\n| :eyeglasses: | Pré-visualização | Pré-visualizar no Discourse Theme Creator\n:hammer_and_wrench: | Link do Repositório | \u003chttps://github.com/discourse/discourse-reply-template-component\u003e\n:open_book: |Novo em Temas do Discourse? | Guia para iniciantes sobre como usar Temas do Discourse\n\n[wrap=theme-install-button repoUrl="https://github.com/discourse/discourse-reply-template-component\" repoName="Discourse Reply Template"]\nInstalar este componente de tema\n[/wrap]\n[quote]\n\n:discourse2: Como este é um componente de tema official mantido pela equipe do Discourse, solicitações de Support, Bug, UX e Feature podem ser feitas nas respectivas categorias aqui no Meta, e marcadas com a tag apropriada do componente de tema. Clique em um link abaixo para iniciar uma. :+1: \n\n\u003ckbd\u003e [:question:\u0026nbsp;Suporte](Discourse Meta "Peça suporte sobre como configurar e usar o Reply Template") \u003c/kbd\u003e \u003ckbd\u003e [:bug:\u0026nbsp;Bug](Discourse Meta "Um relatório de bug significa que algo está quebrado, impedindo o uso normal/típico do componente de tema") \u003c/kbd\u003e \u003ckbd\u003e [:eyes:\u0026nbsp;UX](Discourse Meta "Discussão sobre a interface do usuário do Reply Template, e como os recursos são apresentados (incluindo idioma e elementos da interface do usuário)") \u003c/kbd\u003e \u003ckbd\u003e [:bulb:\u0026nbsp;Funcionalidade](Discourse Meta "Discussão sobre como os recursos existentes do Reply Template podem ser aprimorados ou aprimorados, e como os novos recursos propostos poderiam funcionar")\u003c/kbd\u003e\n\n[/quote]\n\n### Funcionalidades\n\nO Reply Template (Modelo de Resposta) permite reutilizar facilmente parte de uma publicação em uma resposta ou em um novo tópico.\n\n### Uso\n\n\n[wrap=template key=\"nome-do-modelo\"]\nMeu conteúdo reutilizável\n\n- [ ] tarefa 1\n- [ ] tarefa 2\n[/wrap]\n\n\nNote que se um usuário não estiver logado, clicar no botão exibirá a janela modal de login.\n\nchave é obrigatória\n\n### Outras opções\n\n- action=\"create\" isso fará com que o botão abra um composer para criar um novo tópico\n- action=\"create_pm\" isso fará com que o botão abra um composer para criar um novo MP (Mensagem Privada)\n- categoryId=\"2\" só pode ser usado com action=\"create\", definirá a categoria do composer aberto\n- title=\"algum título\" só pode ser usado com create e create_pm, título do tópico/mp\n- recipients=\"a@example.com\" só pode ser usado com create_pm, pessoas para quem isso será enviado\n- usernames=sam só pode ser usado com create_pm\n- label=\"Texto do meu botão\" O texto do botão\n\n\n### Substituições (Placeholders)\n\nVocê pode ter chaves especiais em seu modelo que serão substituídas:\n\n- \$week_start -\u003e data no início da semana\n- \$week_end -\u003e data no final da semana\n- \$prev_week_start -\u003e data no início da semana anterior\n- \$prev_week_end -\u003e data no final da semana anterior\n- \$today\n- \$tomorrow\n- \$username -\u003e nome de usuário do usuário atual\n- \$name -\u003e nome do usuário atual \n\nNote que isso será substituído por datas locais.\n\nSubstituições especiais também são interpoladas em title\n\n### Lista de Tags\n\ntagsList=\":heart:,foo,#bar" mostrará uma lista de caixas de seleção no final do modelo para que as pessoas possam marcar facilmente sua postagem.\n\n

\n\n## Exemplo\n\n\nMinha lista de tarefas $week_end\n\n- [x] tarefa 1\n- [x] tarefa 2\n\n\n### Configurações\n\n| Tradução | Padrão\n|-|-|\n| discourse_reply_template_component.use_template_reply | Usar modelo como resposta\n| discourse_reply_template_component.use_template_create | Usar modelo como novo tópico\n| discourse_reply_template_component.use_template_create_pm | Usar modelo como novo MP\n| discourse_reply_template_component.needs_key | Cada modelo precisa de um atributo de chave. Ex: [wrap=template key=\"status_semanal\"][/wrap]\n\n\u003cbr\u003e\n\n\u003e:discourse2: Hospedado por nós? Componentes de tema estão disponíveis para uso em nossos planos Standard, Business e Enterprise.",“target_locale”:“pt_BR”}

43 curtidas

I was wondering can this be used in a specific category/sub?

Ie bug reporting form?

3 curtidas

Yes :arrow_down:

E.g.
[wrap=template key="bug-report" action="create" categoryId="your-bug-category-id"]

9 curtidas

Thank you will need to explore this more.

This is the best. Thank you!! I use this to create checklist templates that can be created anytime we’re doing a repetitive project. Before, our instructions would have been “copy and paste everything below” instead of having this very elegant button to create a topic for people.

5 curtidas

Is there a plan to make this functionality accessible in the composer window? To me the most logical place being where things like Hide Details and Build Poll live.

3 curtidas

I just updated the component, see OP for usage but a quick note:

  • placeholder dates are now replaced by local dates
  • you can now define a tagsList

8 curtidas

Thank you for a great component!

It’s impossible to add a poll in the wrap. Can you add this functionality?

[wrap=template key="template-name"]

[poll type=regular results=on_vote chartType=bar]
# Who will join?
* 1
* 2
* 3
[/poll]

[/wrap]

I added more locales to your component and created a PR. Please, check.

1 curtida

How can i install this component?

In my opinion it’d be more helpful to have an example for the reply case (without action=create) because this is probably the reason, the majority is searching for since creating a topic is already possible via URL

My try:

  • ok
  • fail
2 curtidas

Would it be possible to use a template to create a new personal message?

Also, when someone is not signed in, clicking on “Use template as reply” does not result in any action. Could you add functionality where if a user is not logged in, something happens to nudge them to log in or create a new account?

4 curtidas

Great suggestion, it’s done, I updated the OP.

4 curtidas

Is there a way to pre-populate the title of a new topic?

Is there a way to automatically add tags instead of having just the tag list?

4 curtidas

No, but that’s reasonable feature request for sure. I’m kinda full ATM but making a note of this, thanks.

5 curtidas

Is there any possible way to modify the stock reply button in a topic with such a template?
That would be a gamechanger for specific structured conversations in the forum. Especially for contests etc where users have to submit content in a structured manner.

1 curtida

Hi, sorry I don’t understand your request, can you be more specific please ?

Currently the user can access the reply template only via the button in the first post generated by the theme component.
What I would like to achieve is to enable the template for the stock reply buttons in the topic as well (reply button below the timeline and reply button below the last post)

Edit: One prolific use case is a topic where users can leave feedback like bug reports etc. If we could add per-topic post templates just like for per-category templates for new topics, that would lead to less incomplete reports and hence save our staff a lot of time.

5 curtidas

Olá,

Estou tendo alguns problemas para instalar este componente. Sou novo no Discourse, então espero que alguém possa confirmar se os passos que tomei estão corretos.

Segui o guia aqui Installing a theme or theme component para instalar o componente. Incluí o componente em todos os nossos temas.

No entanto, quando crio um novo tópico e incluo

Meu conteúdo reutilizável

  • tarefa 1
  • tarefa 2

Não há botão para “Usar modelo como resposta”. Exemplo:

Ele apenas mostra o wrapper em torno do modelo. Estou perdendo alguma etapa? Há algo que eu precise personalizar no código?

Além disso, o Discourse está dizendo que o tema tem erros em CSS, HTML ou YAML. Não tenho certeza se isso tem algo a ver com o motivo pelo qual o botão não é exibido?

Obrigado por qualquer ajuda.

Vou dar uma olhada amanhã

2 curtidas

Obrigado. Fui informado de que também pode ser um problema com a versão do Discourse que estamos executando, mas retornarei sobre isso.