Questa documentazione spiega come creare un link che avvia un nuovo argomento in Discourse con informazioni precompilate.
Livello utente richiesto: Tutti gli utenti
A volte potresti voler fornire agli utenti un link che apra un nuovo compositore di argomenti con alcune informazioni precompilate. Questo può essere utile per vari casi dâuso, inclusi modelli di segnalazione di bug, richieste di funzionalitĂ o post standardizzati.
Costruire lâURL
URL di base
Per comporre un nuovo argomento precompilato senza informazioni aggiuntive, aggiungi /new-topic allâURL del tuo sito, cosĂŹ:
https://discourse.example.com/new-topic
Cliccando su questo si aprirà un compositore di nuovo argomento vuoto per qualsiasi utente autenticato (se non si è autenticati, verrà richiesto di accedere/registrarsi prima di aprire il compositore).
Parametri aggiuntivi
Sebbene un link per aprire un compositore vuoto possa talvolta essere utile, la forza principale di questa funzionalità è la capacità di precompilare il compositore con informazioni aggiuntive.
Per fare ciò, puoi aggiungere parametri allâURL di base:
https://discourse.example.com/new-topic?title=titolo%20argomento&body=corpo%20argomento&category=categoria/sottocategoria&tags=email,planned
Questo aprirĂ una finestra del compositore precompilata con titolo dellâargomento, corpo, categoria e tag.
Analizzando il link/URL per mostrare le opzioni disponibili, abbiamo:
- URL di base:
https://discourse.example.com/new-topic - Lâoperatore URL
?per aggiungere le diverse opzioni - Titolo argomento:
title=titolo%20argomento - Il carattere
&, usato ogni volta che si include un altro parametro - Corpo:
body=corpo%20argomento - La categoria e la sottocategoria separate da uno slash
/se si desidera includerle:category=categoria/sottocategoria - I tag separati da virgola(e)
,se si desidera includere piĂš tag:tags=email,planned
Ciascuno dei parametri è facoltativo e può essere combinato a seconda del risultato finale desiderato.
Come alternativa allâuso del nome della categoria/sottocategoria, puoi specificare un category_id numerico invece, come:
https://meta.discourse.org/new-topic?title=titolo%20argomento&category_id=3
Esempio
Puoi provarlo qui su Meta:
https://meta.discourse.org/new-topic?title=titolo%20argomento&body=corpo%20argomento&category=support/wordpress&tags=wordpress
Tuttavia, per favore non creare effettivamente lâargomento
Per unâesplorazione piĂš pratica della funzionalitĂ , usa il nostro sito demo, try.discourse.org
Utilizzo degli strumenti per sviluppatori del browser
Apri la console del browser (F12 â Console) e utilizza URLSearchParams integrato per costruire lâURL â gestisce automaticamente tutta la codifica percentuale (percent-encoding):
const base = 'https://discourse.example.com/new-topic';
const url = base + '?' + new URLSearchParams({
title: 'My topic title',
body: `Body text here...
supports multi line`,
category: 'support',
tags: 'bug,urgent'
});
console.log(url); // copia questo url
Utilizzo di un URL precompilato con Collegamenti in Evidenza (Featured Links)
Questa funzionalitĂ supporta anche i Featured Links, a condizione che venga omesso anche il parametro body.
LâURL deve essere codificato per lâURL affinchĂŠ il link funzioni.
Ad esempio, per creare un argomento con il seguente URL https://www.xkcd.com/556, il link sarĂ :
https://meta.discourse.org/new-topic?title=https%3A%2F%2Fwww.xkcd.com%2F556
Best Practice
- La Riferimento alla codifica URL HTML di w3Schools è una buona risorsa per scoprire come vengono codificati i caratteri di testo nellâURL. Se devi aggiungere molto testo, câè anche un convertitore da testo a URL nella sezione âTry It Yourselfâ.
- Codifica sempre in URL i parametri per evitare problemi con caratteri speciali.
- Se non sei sicuro dellâID della categoria, puoi verificarlo guardando il numero nellâURL della categoria. (es. https://meta.discourse.org/c/documentation/using-discourse/126)
- Testa i link precompilati per assicurarti che funzionino come previsto.
Al momento non è possibile avere un link precompilato che apra un compositore per rispondere a un argomento specifico.