I know that we can create a new topic via url with special param. But I want my users to click a link to reply a specific topic. Is there a way to add special params in the url query to auto open reply window for my users? If not, is there a way I can do this?
Thank you for your reply, but what I want is that I want my users to reply
a topic which has already been created by others.
eg. I have a topic A in my forum, and I want every user click this link to
reply under topic A, not to create another topic.
It has been a while and I haven’t found a way to do it.
I just want to be able to create a link that when clicked opens a specific topic with the reply box activated and with the focus on it.
What I posted above works, but remember you don’t need to be on a specific topic to reply to it.
If your requirement is “must navigate to topic page, and then open the composer to reply”, then we don’t have that… but again it’s not required, you can reply to any topic from any other topic (or any location in the Discourse app, in fact) in the composer.
I’m aiming to use that link outside of Discourse. For example, putting a link on my blog, and when clicked it opens a new tab and starts a reply on a particular topic of the forum.
The feature we have right now only supports creating new topic via URL.
What @magoz wants is to have a URL for an existing topic that will open composer and user can start replying on that topic as soon as they visit that URL. This is currently not available and is not on my list right now.
Opening the composer (in a blank state) from an URL would be useful for those who have external websites working with Discourse and ask their users to reply to a particular Discourse topic.
For instance, I have a private website where I teach online lessons. I ask my students to reply to specific discourse topics to introduce themselves, to post their homework, etc.
It would be nice to be able to add something like ?reply at the end of any topic’s URL, and share that link with them.
Nous aimerions beaucoup voir cette fonctionnalité également Cela demanderait-il beaucoup de travail supplémentaire pour la rendre possible, si ce n’est pas déjà le cas ?
Certains membres de notre communauté sont des leaders d’opinion ou des experts métier (SME) qui animent des sessions en direct sur YouTube Live. C’est acceptable (au mieux) pour les séances de questions-réponses, mais terrible pour des discussions plus approfondies.
Nous souhaitons pouvoir orienter les utilisateurs vers un sujet d’événement existant (où nous avons utilisé le plugin Events), faire apparaître la fenêtre de réponse, et nous assurer que les personnes posant des questions publient bien dans le sujet correspondant de l’expert métier.
L’un de nos principaux atouts pour beaucoup des personnes avec lesquelles nous travaillons est de leur fournir un espace où ils peuvent engager des discussions plus approfondies avec leurs utilisateurs.
Lorsqu’ils diffusent en direct sur YouTube ou Facebook, ils ne font qu’ENTAMER la conversation. Discourse est l’outil idéal pour la POURSUIVRE.
Si nous pouvions simplifier le processus en fournissant une URL directe sur laquelle les gens peuvent cliquer, en ouvrant automatiquement la boîte de dialogue de réponse et en la pré-remplissant avec un texte standard, ce serait d’une grande aide !!
J’utilise pour cela un composant de thème simple dans mon instance. Voici une adaptation de la mienne, qui accepte également #upload (une nouvelle réponse ouvrant la fenêtre de téléchargement sur le bureau) et #edit (pour les OP de wiki), en plus de #reply.
Il nécessite quelques améliorations, comme éviter setTimeout et gérer correctement draftSequence (je ne pense pas que topic.draft_sequence soit correct), et je ne sais pas quelle serait la meilleure pratique ici. Cela dit, cela fonctionne bien pour moi.
La navigation vers n’importe quel sujet comme /t/[slug]/[id]#reply ouvrira le compositeur avec une nouvelle réponse vide.
Si vous avez besoin d’un texte prérempli, c’est possible en définissant l’attribut reply sur l’objet passé à composer.open. De plus, s’il existe déjà un brouillon pour ce sujet, il vous demandera si vous souhaitez le sauvegarder ou l’abandonner avant de créer cette nouvelle réponse. draftSequence doit être correct si le comportement souhaité est de reprendre ce brouillon.
Le seul changement dont je me souvienne est l’application du flux de connexion si l’utilisateur n’est pas déjà connecté, quelque chose comme :
if (!Discourse.User.current()) {
Discourse.__container__.lookup("route:application").send("showLogin");
}
Je l’utilise toujours dans ma communauté pour amener les utilisateurs de mon application React directement à certains de ces flux sur Discourse (répondre, modifier, télécharger, etc.).