Verknüpfung zu benutzerdefinierten Schemata

Hallo zusammen,

wir richten unsere neue Discourse-Umgebung ein und ich konnte ein benutzerdefiniertes URL-Schema einrichten, um auf eine interne Ressource im Netzwerk zu verlinken. Ich wollte eine einfache Schaltfläche hinzufügen, wenn ich einen neuen Beitrag erstelle, was mir auch gelungen ist, aber ich möchte den hervorgehobenen Text sowohl für den Linktitel als auch für den eigentlichen Link verwenden. Derzeit verwende ich nur “apply surround”, um das Benötigte in einen Link einzufügen, aber wir müssen den Linktitel manuell ändern. Sehen Sie sich den folgenden Code an:

<script type="text/discourse-plugin" version="1.0">
api.onToolbarCreate(toolbar => {
    toolbar.addButton({
        id: "dms_button",
        group: "fontStyles",
        icon: "fab-wikipedia-w",
        perform: e => e.applySurround("[id_here](INET://", ')')
    });
});
</script>

Der Benutzer gibt 123456 ein > dies wird um den hervorgehobenen Text [id_here](INET://123456) angewendet.

Ich habe den Code durchgesehen, konnte aber nichts finden, das mir helfen würde, das zu erreichen, was wir tun wollen. Gibt es eine Möglichkeit, den hervorgehobenen Text auch im Linktitel zu verwenden?

Sie möchten also, dass der von Ihnen ausgewählte Text zweimal erscheint?

Ich glaube nicht, dass diese Funktion das zulässt?

Haben Sie darüber nachgedacht, die Onebox-Logik zu überschreiben, damit sie mit Ihrem Protokoll funktioniert?

Das Protokoll funktioniert einwandfrei, ich kann inet:// nach Bedarf verwenden, aber ich suchte nur nach einer einfachen Möglichkeit für den Benutzer, die benutzerdefinierte URL in einen Beitrag einzufügen. Im vorherigen Formular (phpbb) haben wir einen benutzerdefinierten BBCode für den Link erstellt, der funktionierte, aber ich suchte nach einer einfacheren Lösung mit Discourse.

unterstützt Discourse bereits Oneboxing von inet://-Links?

Das ist nicht ohne Weiteres möglich. Sie schlagen also vor, ein Onebox-Plugin für inet:// zu erstellen, das den Link so formatiert, wie ich ihn benötige?

Wenn ein Benutzer also inet://12345 eingibt, enthält die Onebox-Vorschau dann den richtig formatierten Link?

Mein Vorschlag war, anstatt etwas so Low-Level im Composer zu tun, das Oneboxing-Subsystem „einfach“ so zu modifizieren, dass inet://-Links genauso formatiert werden wie https://-Links.

Speziell beziehe ich mich auf die Art und Weise, wie es Inline formatiert, wie hier: Dark/Light Mode Toggle - #20 by jordan.vidrine

Ich musste nur den Link einfügen, Discourse hat sich das Ziel angesehen und mir aus den og-Tags einen schönen verknüpften Titel erstellt.

Dies setzt natürlich voraus, dass Ihre Organisation die Kontrolle über die og-Tags auf den Zielseiten hat.