أضف زر "رسالة شخصية" على المنشور

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 إعجابات

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 إعجابات

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 إعجابات

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 إعجابات

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)

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 إعجابات

لديكها بالفعل هنا في المنشئ، انقر على سهم الرد في أعلى اليسار، هكذا، ثم حدد رسالة جديدة.

مرحباً، هل يمكنني رؤية أنك تدعم هذه الإضافة الآن على github؟

لقد قمت بتثبيت الإضافة ولكن يبدو أنها لا تعمل. أولاً، الزر “تشغيل” رمادي اللون في صفحة الإضافات، انظر أدناه. لست متأكداً مما يعنيه ذلك؟

بعد ذلك، لا تُظهر قيم الإعدادات زرًا بجوار اسم المستخدم.

هل لا تزال هذه الإضافة تعمل؟ هل يمكننا جعلها تعمل؟

مرحباً،
أرغب في إضافة زر “إرسال رسالة” بجوار اسم المستخدم في المشاركات كما هو موضح أدناه:

لقد قرأت منشورات مختلفة تتعلق بهذه الميزة ولكن يبدو أن أياً منها لا يلبي متطلباتي.

لقد قرأت هذا ولكنه يشير إلى مكون سمة يضيف زرًا في أسفل الموضوع.

هل لديك أي أفكار حول كيفية تحقيق ذلك؟

لا يبدو أن هناك منفذًا إضافيًا لوضع الزر بالضبط حيث تريده:

ربما يمكنك الاكتفاء بوضعه في topic-above-posts.

بعد ذلك، ستقوم بإنشاء مكون glimmer يضيف الزر. أخيرًا، ستستخدم api.renderInOutlet لجعل هذا المكون يظهر هناك. Custom Components -- add button or text at any plugin outlet هو مثال على ذلك.

إذًا، ستقوم بتعديل هذا:

وتكتشف فقط عنوان URL لبدء هذه الرسالة (Prefilled composer link generator قد يساعد - تحتاج فقط إلى معرفة الرابط الذي تريده).

3 إعجابات

شكراً على الرد. هذا يتجاوز قدراتي.
كان هناك مكون إضافي لهذه المتطلبات بالضبط، ويبدو أنه قد تم إزالته Add a "Personal Message" button on Post هذا ما كنت أبحث عنه.

مرحباً سالي! أتساءل لماذا قد ترغبين في فعل هذا. ألا تريدين أن يرد أعضاؤك على الموضوع لإجراء محادثة معًا؟ إضافة رابط كهذا ستؤدي أيضًا إلى ازدحام الواجهة وتشتيت انتباه أعضائك.

لماذا لا يكفيك أنه عند النقر على الصورة الرمزية/اسم المستخدم، يمكنك رؤية بطاقة مستخدم تظهر والتي تحتوي على زر لإرسال رسالة إلى العضو مباشرةً؟

3 إعجابات

[اقتباس=“tobiaseigen، المشاركة:13، الموضوع:186183”]
أتساءل لماذا قد ترغب في فعل هذا. ألا تريد أن يرد أعضاؤك على الموضوع لإجراء محادثة معًا؟ ستؤدي إضافة رابط كهذا أيضًا إلى ازدحام الواجهة وتشتيت انتباه أعضائك.

لماذا لا يكفيك أنه عند النقر فوق الصورة الرمزية/اسم المستخدم، يمكنك رؤية بطاقة مستخدم تظهر والتي تحتوي على زر لإرسال رسالة إلى العضو مباشرةً؟
[/اقتباس]

أحاول إنشاء نظام مراسلة حيث يمكن للمستخدمين النشر في المنتدى ولكن الميزة الرئيسية هي إرسال رسائل إلى بعضهم البعض. لذلك أريد أن يكون زر الرسالة مرئيًا. سيستغرق أي مستخدم جديد وقتًا لمعرفة كيفية إرسال رسالة.

إعجاب واحد (1)

هذا استخدام مثير للاهتمام لـ Discourse! يمكنك تجاوز ذلك ببذل المزيد من الجهد لتثقيف أعضائك حول كيفية الوصول إلى بطاقة المستخدم للرد عبر رسالة شخصية (أو دردشة؟ هل تستخدم الدردشة أيضًا؟). يمكنك إنشاء بانر دائم عبر الجزء العلوي، على سبيل المثال. وشرح كيفية الوصول إليه في رسالة الترحيب الخاصة بك.

إذا كنت بحاجة ماسة إلى هذا الزر ولديك ميزانية، فيمكنك النشر في Marketplace وربما يمكن لشخص ما هنا إنشاؤه لك.

لقد فعلت ذلك بالفعل، وأظهرته في الأعلى، وأرسلت التعليمات في رسالة الترحيب، وصفحة “من نحن”، وما إلى ذلك.

لا أستخدم الدردشة، ستفي الرسائل بالغرض بالنسبة لي.

نعم، سيكون هذا الملاذ الأخير.

أتمنى أن يعيد أحدهم إحياء هذا المكون الإضافي لأنه كان يعمل في الماضي، أليس كذلك؟

أنا المؤلف الأصلي. حتى لو كان البرنامج المساعد لا يزال يعمل، فإنه يضيف الزر إلى المنشور الأول وليس كل منشور.

3 إعجابات

[اقتباس=“merefield، المشاركة: 17، الموضوع: 186183، كامل: true”]
حتى لو كان لا يزال يعمل، فإن الملحق يضيف الزر إلى المنشور الأول وليس كل منشور.
[/اقتباس]

مرحبًا روبرت، نعم هذا بالضبط ما أريده، إضافة زر الرسالة بجوار المنشور الأول للمؤلف الأصلي.

المشكلة هي أن هذا الملحق لا يعمل، فهو لا يعرض زر الرسالة. لقد قمت بتثبيته. أرى أن زر التشغيل رمادي اللون في صفحة الملحقات لهذا الملحق، لست متأكدًا ماذا يعني ذلك؟

هل يمكنك إحياء هذا الملحق؟ رجاءً؟ إذا كان لديك بعض وقت الفراغ.

في الواقع، سيعمل مكون سمة المكونات المخصصة لدي.

فقط ضع الرابط لبدء رسالة خاصة (أعتقد أن هذا يعمل؟) ومنفذ المكون الإضافي الذي ذكرته أعلاه في الإعدادات.

تعديل:

أوه. اللعنة.

لا. أنت بحاجة إلى هذا

https://your.discourse.site/new-message?username=username

ولا توجد آلية لتضمين اسم مستخدم الموضوع

إذا كانت لديك ميزانية وترغب في رعاية العمل، فأرسل لي رسالة خاصة.

إعجابَين (2)