Crear un enlace para iniciar un nuevo tema con información prellenada

:bookmark: Esta documentación explica cómo crear un enlace que inicie un nuevo tema en Discourse con información prellenada.

:person_raising_hand: Nivel de usuario requerido: Todos los usuarios

A veces, es posible que desees proporcionar a los usuarios un enlace que abra un compositor de nuevo tema con cierta información prellenada. Esto puede ser útil para varios casos de uso, incluidas plantillas de informes de errores, solicitudes de funciones o publicaciones estandarizadas.

Construcción de la URL

URL Base

Para componer un nuevo tema prellenado sin información adicional, añade /new-topic a la URL de tu sitio, así:

https://discourse.example.com/new-topic

Al hacer clic en esto, se abrirá un compositor de nuevo tema en blanco para cualquier usuario que haya iniciado sesión (si no ha iniciado sesión, se le pedirá que inicie sesión/se registre antes de abrir el compositor).

Parámetros Adicionales

Si bien un enlace para abrir un compositor en blanco puede ser útil en ocasiones, la principal fortaleza de esta función es la capacidad de prellenar el compositor con información adicional.

Para hacer esto, puedes añadir parámetros a la URL base:

https://discourse.example.com/new-topic?title=titulo%20del%20tema&body=cuerpo%20del%20tema&category=categoria/subcategoria&tags=email,planned

Esto abrirá una ventana del compositor prellenada con el título del tema, el cuerpo, la categoría y las etiquetas.

Desglosando el enlace / URL para mostrar las opciones disponibles, tenemos:

  • URL Base: https://discourse.example.com/new-topic
  • El operador de URL ? para añadir las diferentes opciones
  • Título del tema: title=titulo%20del%20tema
  • El &, utilizado cada vez al incluir otro parámetro
  • Cuerpo: body=cuerpo%20del%20tema
  • La categoría y la subcategoría separadas por una barra / si deseas incluirlas: category=categoria/subcategoria
  • Las etiquetas separadas por coma(s) , si deseas incluir varias etiquetas: tags=email,planned

Cada uno de los parámetros es opcional y se puede combinar según el resultado final deseado.

Como alternativa a usar el nombre de la categoría/subcategoría, puedes especificar un category_id numérico en su lugar, como:

https://meta.discourse.org/new-topic?title=titulo%20del%20tema&category_id=3

Ejemplo

Puedes probar esto aquí en Meta:

https://meta.discourse.org/new-topic?title=titulo%20del%20tema&body=cuerpo%20del%20tema&category=support/wordpress&tags=wordpress

https://meta.discourse.org/new-topic?title=titulo%20del%20tema&body=cuerpo%20del%20tema&category=support/wordpress&tags=wordpress

:exclamation: Aunque por favor no crees el tema realmente :slight_smile: Para explorar la función de forma más práctica, utiliza nuestro sitio de demostración, try.discourse.org

Uso de las Herramientas de Desarrollo del Navegador

Abre la consola del navegador (F12 → Console) y utiliza URLSearchParams incorporado para construir la URL; maneja toda la codificación porcentual automáticamente:

const base = 'https://discourse.example.com/new-topic';
const url = base + '?' + new URLSearchParams({
  title: 'Mi título de tema',
  body: `Texto del cuerpo aquí...\nadmite varias líneas`,
  category: 'support',
  tags: 'bug,urgent'
});
console.log(url); // copia esta url

Uso de una URL prellenada con Enlaces Destacados

Esta función también es compatible con los Enlaces Destacados, siempre que el parámetro body no se incluya también.

:information_source: La URL debe estar codificada en URL para que el enlace funcione.

Por ejemplo, para crear un tema con la siguiente URL https://www.xkcd.com/556, el enlace será:

https://meta.discourse.org/new-topic?title=https%3A%2F%2Fwww.xkcd.com%2F556

Mejores Prácticas

  • La Referencia de Codificación de URL HTML de w3Schools es un buen recurso para encontrar cómo se codifican los caracteres de texto en la URL. Si tienes mucho texto que añadir, también hay un convertidor de texto a URL en la sección ‘Pruébalo tú mismo’.
  • Codifica siempre en URL los parámetros para evitar problemas con caracteres especiales.
  • Si no estás seguro del ID de la categoría, puedes comprobarlo buscando el número en la URL de la categoría. (ej. https://meta.discourse.org/c/documentation/using-discourse/126)
  • Prueba los enlaces prellenados para asegurarte de que funcionan como se espera.

:information_source: Actualmente no es posible tener un enlace prellenado que abra un compositor para responder a un tema específico.

Recursos Adicionales

89 Me gusta
Start creating a new topic via link?
Link that pre-populates the composer?
Fill in post for user?
What is the best way to integrate member applications?
Open Composer with Prefilled information
Unlisted categories
URL to set up new topic and category, tags
Problem in sso redirection for compose a new pre-filled topic via URL
Pre-filled topics don't recognize subcategories anymore
Topic-specific reply template
Rename @discobot's start new user command
Bookmarklet or chrome extension for posting links to a Discourse
Add one button for topic create with pre-filled content without composer or API?
How Coinbase Uses Discourse to Educate Customers and Improve SEO
Link to New Topic?
Link to create a new topic with parsed values in GET-method data?
[PAID] extra input fields for new topic
How to "replace" +New Topic with a custom button that brings up the composer
Discourse Templates
Create new topic via URL and set tag or category
Wording for private/secure categories
Topic-specific reply template
Topic-specific reply template
How to add a "button" which composes a pre-filled topic
Start a topic by pasting a link (like Reddit)
Link to start a topic with a pre-filled attachment file
How to create a post clicking a link?
Is there any link to open composer (for hyperlink)?
"push" sso users to discourse?
Post commits via webhook inside a topic as reply
Was this Article helpful? Yes or No
Gitter: Post notifications to chat, post transcripts to forum
How to make all users who sign up or accept in invite go to a specifed category(with post composer open)
Category-specific "new topic" email address/url in notification email?
Open new topic composer in a separate window
Onboarding: Discobot, automated messages, other options?
Deep link to new topic or account creation
Alerts that react to the user
Feedback form / reporting bugs
How to have a reply link with pre-filled information?
How do I create a link which opens Create Topic?
Create a link that will open the editor with a specific category and a specific tag
Any Direct URL To New Topic Page?
Creating pre-filled personal message links
URL for "Sign Up" or "Create Topic"?
Link to "Create new topic" and passing tag and category with query var?
Opening a reply window via URL
How do I create a link which opens Create Topic?
Opening a reply window via URL
Prefilled composer link generator
[Solved] In plugin: opening the composer without changing the route
URL to start new post
New Topic Create URL is not working for Subcategory
Create new topic in category with specific tag via URL
Is there a way to make an input form for structured data?
Placeholder Forms
Direct link to composing a comment?
Topic-specific reply template
Creating pre-filled personal message links
Oneboxing not working when starting a topic with pre-filled information
Using topic templates for categories
Impossible to copy heading links
Topic Templates
Have url for creating topic with specific title
Oneboxing not working when starting a topic with pre-filled information
Is there a way to link directly to the editing screen?
Directly linking to new-topic not working when default list filter = no sub categories
Chrome/Firefox extension "Share to discourse"
How to add%{post_url} in customize URL
How to auto set topic title?
How can I create a new topic in Discourse via a link or direct the person to the topic if it exists