Ajouter un bouton "Message Personnel" sur le Post

Do you think it is possible to add a “Private Message” button to the topic first post? :thinking:

I am surprised that many users don’t know how to send PM to OP, because the PM button is not visible unless they click on the OP’s avatar.

For example,


Currently, I am using the " discourse-custom-topic-button" plugin.

And use the url of
example.com/new-message?username=<TOPIC_USERNAME>&title=Re:<TOPIC_TITLE>

However, when user click on the button, it jump to the front page immediately, before the Message editor show up. It doesn’t act the same as the “Message” button in user card. If you click on the “Message” button in user card, it show up the message editor immediate without jumping to other page.

Do you think it is possible to make the custom button (new-message url) act the same as the Message button in user card ? :thinking:

I recently built this for a client:

https://github.com/paviliondev/discourse-pm-topic-author

It is open-source. It may suit your needs. Just add the Categories you want it to appear in. Let me know if you hit any bugs.

Unfortunately I don’t have time to extend it at present.

Thanks to @davidkingham for commissioning us to do the work and allowing this to be open source, and in turn therefore supporting the wider community.

10 « J'aime »

Thank you very much. :smiling_face_with_three_hearts: :smiling_face_with_three_hearts: :smiling_face_with_three_hearts:

It works exactly what I am looking for. :partying_face: :partying_face: :partying_face:


Just out of curiosity, :grinning:

Do you think I can add
{{#if this.user.can_send_private_message_to_user}}
to “pm-topic-author.hbs” , so that the button won’t show up if the user is the same as the OP ? :thinking:

Similar to Discourse User card “user-card-contents.hbs

pm-topic-author.hbs

3 « J'aime »

Good catch!

Given we already have the showPMTopicAuthorButton property, we should probably do that in JS, though your solution is a great interim approach.

3 « J'aime »

So I’ve done that with JS:

https://github.com/paviliondev/discourse-pm-topic-author/commit/a82ac238d9dce2291e827b66784aef1715e077c0

Thanks for your feedback.

Upgrade when you get chance and please confirm that works for you.

10 « J'aime »

Thank you very much for the update. :smiling_face_with_three_hearts: :smiling_face_with_three_hearts: :smiling_face_with_three_hearts:

Now It works perfectly well for login user. :partying_face: :partying_face: :partying_face:

However, it seem after updated, the plugin cause some error for non-login user. When non-login user visit the page, it get a blank post. It only show the title, category, tag, but everything below is empty . :thinking:

Browser Inspector:
2021-04-11_053333

Error log:

1 « J'aime »

https://github.com/paviliondev/discourse-pm-topic-author/commit/ed5a0128c754e1017a752a08bf3725acf3f5bfb5
Schoolboy error :man_facepalming:t3:- introduced that in last change. Hopefully that resolves it for you :slight_smile:

4 « J'aime »

Vous l’avez déjà ici dans le compositeur, cliquez sur la flèche de réponse en haut à gauche, comme ceci, puis sélectionnez Nouveau message.

Bonjour, je vois que vous maintenez maintenant ce plugin sur GitHub ?

J’ai installé le plugin mais il ne semble pas fonctionner. Premièrement, le bouton d’activation est grisé sur la page des plugins, voir ci-dessous. Je ne suis pas sûr de ce que cela signifie ?

Ensuite, les valeurs de réglage n’affichent pas de bouton à côté du nom de l’utilisateur.

Ce plugin fonctionne-t-il toujours ? Pouvons-nous le faire fonctionner ?

Bonjour,
Je souhaite ajouter un bouton « Envoyer un message » à côté du nom d’utilisateur sur les publications, comme illustré ci-dessous :

J’ai lu divers articles à ce sujet, mais aucun ne semble répondre à mes besoins.

J’ai lu ceci, mais cela pointe vers un composant thématique qui ajoute un bouton en bas du sujet.

Des idées pour y parvenir ?

Il ne semble pas y avoir de sortie de plugin pour placer le bouton exactement où vous le souhaitez :

Peut-être pourriez-vous vous contenter de l’avoir à topic-above-posts.

Vous créeriez ensuite un composant glimmer qui ajoute le bouton. Enfin, vous utiliseriez api.renderInOutlet pour que ce composant apparaisse là. Custom Components -- add button or text at any plugin outlet en est un exemple.

Vous modifieriez donc ceci :

et trouveriez simplement l’URL pour démarrer ce message (Prefilled composer link generator pourrait aider – il vous suffit de connaître le lien que vous souhaitez).

3 « J'aime »

Merci pour votre réponse. C’est au-delà de mes capacités.
Il existait un plugin pour ces exigences exactes, il semble qu’il ait été supprimé Add a "Personal Message" button on Post c’est ce que je cherchais.

Salut Sally ! Je me demande pourquoi tu voudrais faire ça. Ne veux-tu pas que tes membres répondent au sujet pour avoir une conversation ensemble ? Ajouter un lien comme celui-ci encombrera également l’interface et distraira tes membres.

Pourquoi n’est-ce pas suffisant pour toi que, lorsque tu cliques sur l’avatar/nom d’utilisateur, tu puisses voir une carte d’utilisateur apparaître avec le bouton pour envoyer directement un message au membre ?

3 « J'aime »

J’essaie de construire un système de messagerie où les utilisateurs peuvent poster sur le forum mais la fonctionnalité principale est de s’envoyer des messages. Je veux donc que le bouton Message soit visible. Tout nouvel utilisateur mettra du temps à comprendre comment envoyer un message.

1 « J'aime »

C’est une utilisation intéressante de Discourse ! Vous pourriez vous en sortir en faisant davantage pour éduquer vos membres sur la façon d’accéder à la carte d’utilisateur pour répondre par message personnel (ou chat ? utilisez-vous également le chat ?). Vous pourriez créer une bannière persistante en haut, par exemple. Et expliquez comment y accéder dans votre message de bienvenue.

Si vous avez absolument besoin de ce bouton et que vous avez un budget, vous pouvez poster sur Marketplace et peut-être que quelqu’un ici pourra le construire pour vous.

Je l’ai déjà fait, en le montrant en haut, en envoyant des instructions dans le message de bienvenue, la page “À propos” et ainsi de suite.

Je n’utilise pas le chat, les messages me suffiront.

Oui, ce serait le dernier recours.

J’aimerais que quelqu’un relance ce plugin car il fonctionnait dans le passé, n’est-ce pas ?

Je suis l’auteur original. Même si cela fonctionnait encore, le plugin ajoute simplement le bouton au premier article pas à chaque article.

3 « J'aime »

[citation=“merefield, post:17, topic:186183, full:true”]
Même s’il fonctionnait encore, le plugin ajoute simplement le bouton au premier message pas à chaque message.
[/citation]

Bonjour Robert, oui c’est exactement ce que je veux, ajouter le bouton Message à côté du premier message de l’auteur du sujet.

Le problème est que ce plugin ne fonctionne pas, il n’affiche pas le bouton Message. Je l’ai installé. Je peux voir que le bouton On est grisé sur la page des plugins pour ce plugin, je ne suis pas sûr de ce que cela signifie ?

Seriez-vous en mesure de relancer ce plugin ? S’il vous plaît? Si vous avez du temps libre.

En fait, mon composant de thème de composants personnalisés fonctionnerait.

Il suffit de mettre l’URL pour démarrer un MP (je pense que cela fonctionne ?) et la sortie du plugin que j’ai mentionnée ci-dessus dans les paramètres.

Modifier :

Oh. Zut.

Non. Vous avez besoin de ceci

https://votre.site-discourse.fr/new-message?username=nomdutilisateur

Et il n’y a aucun mécanisme pour inclure le nom d’utilisateur du sujet.

Si vous avez un budget et souhaitez sponsoriser le travail, envoyez-moi un message privé.

2 « J'aime »