Can we change the title of the topic without changing the slug, at least for admin?
The old slug URL would still redirect to the article, is that your concern with the slug changing?
No, I know that it will redirect, but I prefer not having redirection and just change the title, like in wordpress.
That probably needs to be logged in the feature category then as I’m pretty sure that it isn’t something Discourse currently allows.
No this can not be done, slug is coupled to title.
@sam does the old url then redirect to the new one? Concerned that if we allow high trust users to edit topics, we may end up sending visitors from old links to broken pages.
Is the slug appears in the database? If so, there should be no problem allowing the admin at least to change the title. If the slug isn’t in the database, it is a problem.
The old URL does redirect, it’s ID based and it checks if the slug is the same as the one in the databse or after normalization of the title. I blieve.
The slug is cached, but but the source of truth is always the topic title. Quite a few internals need to be changed to allow overriding, not on any roadmap.
¿Sigue siendo este el caso?
Mi caso de uso es: las publicaciones en mi blog de Ghost crean temas en Discourse. He seguido una sugerencia anterior del fundador de Ghost para truncar la longitud del slug, lo cual hice con mi publicación más reciente. Discourse crea el slug a partir del título de la publicación, no del slug de la publicación. Si bien todo eso funciona bien, también tengo en uso un script discourse-get-comment-count que muestra en la página de inicio (así como en la parte superior de cada publicación individual) cuántos comentarios tiene cada publicación. El problema es que consulta a Discourse (si tengo la jerga correcta) por el slug de la publicación, no por su título, y por lo tanto no descubre el recuento real de comentarios. (Puede ver que la publicación en la parte superior del sitio tiene el recuento de comentarios atascado en el spinner).
¿Hay algo que pueda hacer al respecto además de no personalizar el slug?
Esta implementación me hace ![]()
¿Por qué no usa topic_id aquí: discourse-get-comment-count/update-comments.js at master · vikaspotluri123/discourse-get-comment-count · GitHub
Si lo hiciera, el slug no importaría en absoluto.
No pretenderé entender esto completamente, pero esto es lo que me dijeron en respuesta cuando transmití tu sugerencia:
¿Cómo obtendríamos el
topic_idbasándonos en un ID de publicación de Ghost, slug o URL?Entiendo que podríamos usar el ID de la publicación para vincular el tema a través de la propiedad
external_id, pero parece que el uso deexternal_idestá limitado a la API, y los temas se crean utilizando la función de incrustación (que no parece admitirexternal_id).
Como nota al margen, contrariamente a lo que declaré en mi comentario anterior, modifiqué el slug de nuevo a su valor predeterminado en la publicación de Ghost mencionada hace un par de horas, lo que significa que el recuento de comentarios no está atascado en el spinner como se indicó.
Si te basas en nuestra incrustación, entonces Discourse mantiene un mapa entre la URL de incrustación y el tema.
Por lo tanto, podrías usar:
Para obtener la lista del recuento de comentarios.
Obtener el recuento de comentarios podría simplemente llamar a ese endpoint con la URL fantasma. Abierto a posiblemente crear un endpoint “batch” para que puedas pasarle varias URLs. pr-welcome sobre eso.