Ajustado correctamente:
Pero los enlaces externos se abren en la misma pestaña.
¿Es un error?
¿Lo estás anulando con tus preferencias personales?
Como referencia, eso está en Preferencias > Interfaz > Abrir todos los enlaces externos en una nueva pestaña
.
Si cambias tu preferencia aquí en Meta (y recargas el sitio), ¿funciona como esperas en este foro?
Sí, acabo de configurarlo aquí en mis preferencias y abrió un enlace externo en una nueva pestaña.
Entonces esto no parece ser un error en Discourse.
¿Hay algo especial en su foro? ¿Ha probado el modo seguro? ¿Hay algún complemento que pueda estar causando esto?
Nada especial. Alojado por mí mismo en Hostinger Ubuntu. También deshabilité todos los complementos. Probaré el modo seguro.
Para cualquiera que tenga este problema, aquí está la solución. Simplemente cree un componente de tema y agregue este código a la sección js:
import { apiInitializer } from "discourse/lib/api";
export default apiInitializer("1.8.0", (api) => {
api.decorateCookedElement(
(element) => {
element.querySelectorAll("a[href^='http']").forEach((link) => {
if (link.hostname !== window.location.hostname) {
link.target = "_blank";
link.rel = "noopener noreferrer";
}
});
},
{ id: "external-links-new-tab" }
);
});