Tag-Beschreibung entfernt target="_blank"

Bei einigen meiner Tag-Beschreibungen möchte ich einen Link hinzufügen, wie diesen:

<a href="https://store.sgiant.me" target="_blank">Hier klicken</a>, um den offiziellen Sir Giant Store zu besuchen.

Wenn ich ihn zum ersten Mal speichere, funktioniert er und öffnet sich in einem neuen Fenster.
Wenn ich die Seite aktualisiere, funktioniert er nicht mehr und wenn ich den Code überprüfe, wird er zu:

<a href="https://store.sgiant.me">Hier klicken</a>, um den offiziellen Sir Giant Store zu besuchen.

Ich habe die Option, externe Links in einem neuen Tab zu öffnen, bereits auf “Ja” gesetzt, aber das scheint diesen speziellen Fall, in dem ich HTML-Code hinzufüge, nicht zu beeinflussen.

ChatGPT schlug die Erstellung einer Komponente mit dem JS-Tab vor, die Folgendes enthält:

import { apiInitializer } from "discourse/lib/api";

export default apiInitializer((api) => {
  function processTagLinks() {
    document.querySelectorAll('.tag-title-contents a[href^="http"]').forEach(link => {
      if (!link.href.includes(window.location.hostname) && !link.hasAttribute('data-processed')) {
        link.setAttribute('target', '_blank');
        link.setAttribute('rel', 'noopener noreferrer');
        link.setAttribute('data-processed', 'true');
      }
    });
  }

  // Sofort verarbeiten
  processTagLinks();

  // Auf DOM-Änderungen achten
  const observer = new MutationObserver(() => {
    processTagLinks();
  });

  observer.observe(document.body, {
    childList: true,
    subtree: true
  });

  // Auch bei Seitenwechseln ausführen
  api.onPageChange(() => {
    setTimeout(processTagLinks, 100);
  });
});

Aber ich bin kein Entwickler und weiß nicht, ob das eine gute Lösung ist oder nicht.

Vielleicht möchten Sie nur Standardmäßig andere externe Links in neuem Tab öffnen anpassen

Aber das ist es, was ich meine mit Ich habe bereits die Option, externe Links in einem neuen Tab zu öffnen, auf Ja gesetzt

image

Dies hat keinen Einfluss auf das rohe HTML, das ich in der Beschreibung verwende. Deshalb musste ich eine Alternative finden.

1 „Gefällt mir“