Aggiungi un pulsante "Messaggio Personale" sul Post

Pensi sia possibile aggiungere un pulsante “Messaggio Privato” al primo post di un argomento? :thinking:

Sono sorpreso che molti utenti non sappiano come inviare un MP all’OP, poiché il pulsante MP non è visibile a meno che non facciano clic sull’avatar dell’OP.

Ad esempio,


Attualmente, sto utilizzando il plugin “discourse-custom-topic-button”.

E utilizzo l’URL di
example.com/new-message?username=<TOPIC_USERNAME>&title=Re:<TOPIC_TITLE>

Tuttavia, quando l’utente fa clic sul pulsante, viene reindirizzato immediatamente alla pagina iniziale prima che appaia l’editor dei messaggi. Non si comporta allo stesso modo del pulsante “Messaggio” nella scheda utente. Se fai clic sul pulsante “Messaggio” nella scheda utente, l’editor dei messaggi appare immediatamente senza reindirizzare ad altre pagine.

Pensi sia possibile far sì che il pulsante personalizzato (URL new-message) si comporti come il pulsante Messaggio nella scheda utente? :thinking:

Recentemente ho realizzato questo per un cliente:

È open-source. Potrebbe fare al caso vostro. Basta aggiungere le Categorie in cui desiderate che appaia. Fatemi sapere se riscontrate qualche bug.

Purtroppo al momento non ho tempo per estenderlo.

Ringrazio @davidkingham per averci commissionato il lavoro e permesso di renderlo open-source, sostenendo così indirettamente la comunità più ampia.

10 Mi Piace

Grazie mille. :smiling_face_with_three_hearts: :smiling_face_with_three_hearts: :smiling_face_with_three_hearts:

Funziona esattamente come cercavo. :partying_face: :partying_face: :partying_face:


Solo per curiosità, :grinning:

Pensi che possa aggiungere
{{#if this.user.can_send_private_message_to_user}}
a “pm-topic-author.hbs”, in modo che il pulsante non venga mostrato se l’utente è lo stesso dell’OP? :thinking:

Simile alla scheda utente di Discourse “user-card-contents.hbs

3 Mi Piace

Ottima individuazione!

Dato che abbiamo già la proprietà showPMTopicAuthorButton, dovremmo probabilmente farlo in JS, anche se la tua soluzione è un’ottima soluzione provvisoria.

3 Mi Piace

Quindi l’ho fatto con JS:

Grazie per il tuo feedback.

Aggiorna quando hai modo e conferma che funzioni per te.

10 Mi Piace

Grazie mille per l’aggiornamento. :smiling_face_with_three_hearts: :smiling_face_with_three_hearts: :smiling_face_with_three_hearts:

Ora funziona perfettamente per gli utenti loggati. :partying_face: :partying_face: :partying_face:

Tuttavia, sembra che dopo l’aggiornamento il plugin causi alcuni errori per gli utenti non loggati. Quando un utente non loggato visita la pagina, ottiene un post vuoto. Vengono mostrati solo il titolo, la categoria e i tag, ma tutto il resto è vuoto. :thinking:

Ispezione del browser:

Registro degli errori:

1 Mi Piace

Errore da scolaretto :man_facepalming:t3: - introdotto nell’ultima modifica. Spero che questo lo risolva per te :slight_smile:

4 Mi Piace

Lo hai già qui nella finestra di composizione, fai clic sulla freccia di risposta in alto a sinistra, così, quindi seleziona Nuovo messaggio.

Ciao, vedo che ora mantieni questo plugin su GitHub?

Ho installato il plugin ma non sembra funzionare. Innanzitutto, il pulsante di attivazione è disattivato nella pagina dei plugin, vedi sotto. Non sono sicuro di cosa significhi?

Successivamente, le impostazioni dei valori non mostrano un pulsante accanto al nome dell’utente.

Questo plugin funziona ancora? Possiamo farlo funzionare?

Ciao,
Voglio aggiungere un pulsante “Invia messaggio” accanto al nome utente nei post, come mostrato di seguito:

Ho letto vari post relativi a questa funzionalità, ma nessuno di essi sembra soddisfare i miei requisiti.

Ho letto questo, ma questo rimanda a un componente tematico che aggiunge un pulsante in fondo all’argomento.

Qualche idea su come ottenere questo risultato?

Non sembra esserci una plugin outlet dove inserire il pulsante esattamente dove desideri:

Forse potresti accontentarti di averlo in topic-above-posts.

Quindi creeresti un componente glimmer che aggiunge il pulsante. Infine, useresti api.renderInOutlet per far apparire quel componente lì. Custom Components -- add button or text at any plugin outlet è un esempio di ciò.

Quindi modificheresti questo:

e troveresti semplicemente l’URL per avviare quel messaggio (Prefilled composer link generator potrebbe aiutare – devi solo sapere quale link desideri).

3 Mi Piace

Grazie per la risposta. È al di là delle mie capacità.
C’era un plugin per questi requisiti esatti, sembra che sia stato rimosso Add a "Personal Message" button on Post questo è quello che stavo cercando.

Ciao Sally! Mi chiedo perché tu voglia fare questo. Non vuoi che i tuoi membri rispondano all’argomento per avere una conversazione insieme? Aggiungere un link del genere inoltre ingombrerà l’interfaccia e distrarrà i tuoi membri.

Perché non ti basta che, quando clicchi sull’avatar/username, puoi vedere apparire una usercard che ha il pulsante per inviare direttamente un messaggio al membro?

3 Mi Piace

[citazione=“tobiaseigen, post:13, topic:186183”]
Mi chiedo perché vorresti fare questo. Non vuoi che i tuoi membri rispondano all’argomento per avere una conversazione insieme? Aggiungere un link del genere ingombrerà anche l’interfaccia e distrarrà i tuoi membri.

Perché non ti basta che, quando fai clic sull’avatar/nome utente, puoi vedere apparire una usercard che ha il pulsante per inviare direttamente un messaggio al membro?
[/citazione]

Sto cercando di costruire un sistema di messaggistica in cui gli utenti possono pubblicare nel forum, ma la caratteristica principale è l’invio di messaggi tra loro. Quindi voglio che il pulsante Messaggio sia visibile. Qualsiasi nuovo utente impiegherà del tempo per capire come inviare un messaggio.

1 Mi Piace

È un uso interessante di Discourse! Potresti cavartela semplicemente impegnandoti di più per educare i tuoi membri su come accedere alla scheda utente per rispondere tramite messaggio personale (o chat? stai usando anche la chat?). Potresti creare un banner persistente nella parte superiore, ad esempio. E spiegare come accedervi nel tuo messaggio di benvenuto.

Se hai assolutamente bisogno di questo pulsante e hai un budget, puoi pubblicare su Marketplace e magari qualcuno qui può costruirlo per te.

L’ho già fatto, mostrando in alto, inviando istruzioni nel messaggio di benvenuto, nella pagina “chi siamo” e così via.

Non uso la chat, i messaggi vanno bene per me.

Sì, sarebbe l’ultima risorsa.

Vorrei che qualcuno rianimasse questo plugin dato che in passato ha funzionato, vero?

Sono l’autore originale. Anche se funzionasse ancora, il plugin aggiunge il pulsante solo al primo post, non a ogni post.

3 Mi Piace

[citazione=“merefield, post:17, topic:186183, full:true”]
Anche se funzionasse ancora, il plugin aggiunge il pulsante solo al primo post, non a ogni post.
[/citazione]

Ciao Robert, sì, è esattamente quello che voglio, aggiungere il pulsante Messaggio accanto al primo post dell’autore originale (OP - Original Poster).

Il problema è che il plugin non funziona, non mostra il pulsante Messaggio. L’ho installato. Vedo che il pulsante On è grigio nella pagina dei plugin per questo plugin, non sono sicuro di cosa significhi?

Saresti in grado di ripristinare questo plugin? Per favore? Se hai un po’ di tempo libero.

In realtà, il mio componente tema per componenti personalizzati funzionerebbe.

Basta inserire l’URL per avviare un PM (penso che funzioni?) e l’outlet del plugin che ho menzionato sopra nelle impostazioni.

Modifica:
Oh. Dannazione.
No. Hai bisogno di questo
https://your.discourse.site/new-message?username=username
E non c’è alcun meccanismo per includere il nome utente dell’argomento.

Se hai un budget e desideri sponsorizzare il lavoro, mandami un messaggio privato.

2 Mi Piace