verwaltete Links in Wysiwyg?

7

Ich suche nach einer systematischen Möglichkeit, mit Links in Drupal umzugehen, wie es sie für Bilder gibt. Bei Bildern fügen Sie dem Inhaltstyp ein Bildfeld hinzu und installieren dann das Modul "Einfügen". Mit Wysiwyg können Sie das Bild einfach an einer beliebigen Stelle im Knoteninhalt einfügen und es dennoch "verwaltbar" machen, da es sich um ein Feld handelt.

Ich suche etwas Ähnliches für Links (extern und intern), kann mir aber keine existierende Methode vorstellen. Was ich gefunden habe, ist, entweder das Modul "Links" zu verwenden und alle Links am unteren Rand des Knotens anzuzeigen (über ein Feld) oder die Wysiwyg-Schaltfläche "Link" zu verwenden und Links an einer beliebigen Stelle einzufügen, die jedoch nicht verwaltet werden.

Ich suche nach einer Lösung, bei der:

  1. Alle Links wären einfacher zu verwalten, da sie als Felder gespeichert würden (höchstwahrscheinlich "Link" -Feld).
  2. Es wäre möglich, diese Links nicht als Linkliste am unteren Rand des Knotens anzuzeigen, sondern an verschiedenen Stellen innerhalb des Knoteninhalts (wie Bilder mit dem Modul "Einfügen").
Camcam
quelle

Antworten:

1

Ich würde empfehlen, dass Sie Ihre Lösung auf dem Modul ckeditor_link basieren . Um dieses Modul verwenden zu können, müssen Sie natürlich ckeditor für Ihre Wysiwyg-Bearbeitung verwenden. Wenn dies kein Problem darstellt, können Benutzer beim Erstellen von Links einen neuen URL-Typ "Interner Link" verwenden. Durch Eingabe des Knotentitels des Ziels wird eine Verknüpfung zu Node / 1234 hergestellt, und diese Verknüpfung wird zum Zeitpunkt des Renderns in eine Verknüpfung zum Pfadalias des Knotens umgewandelt. Jetzt ändern sich Ihre internen Links automatisch, wenn Sie den Pfadalias des Knotens bearbeiten. Sie müssen nichts weiter tun, um sie zu verwalten.

Für externe Links würde ich einen neuen Knotentyp für externe Links erstellen und für jeden eine Zielseite erstellen. Verwenden Sie ein Linkfeld auf der Zielseite, um den externen Link zu speichern, und fügen Sie für diesen Inhaltstyp Boilderplate-Text in Ihre Vorlage ein. Sobald Sie dies eingerichtet haben, können Sie das Modul ckeditor_link erneut verwenden, um auf Ihre Zielseite zuzugreifen. Wenn Ihnen die Idee einer Zielseite nicht gefällt und Sie mit dem Codieren ein wenig vertraut sind, können Sie eine eigene Version von ckeditor_link für externe Links erstellen und den Eingabefilter so ändern, dass die URL des Ziellinks anstelle des URL der Zielseite.

greg_1_anderson
quelle
Wir verwenden Tinymce (und können es nicht ändern), aber ich werde prüfen, ob es möglich ist, etwas Ähnliches in Tinymce zu haben.
Camcam
Wenn Sie als Zwischenschritt (bis jemand ein Link-Editor-Plugin für tinymce schreibt) möchten, dass Benutzer interne Links als Knoten / 1234 eingeben, können Sie sie beim Rendern mithilfe des Projekts für interne Links wieder in ihren Alias-Pfad konvertieren Zeit. Siehe drupal.cocomore.com/blog/…
greg_1_anderson
Eine andere Option, die auch das Codieren beinhaltet, wäre das Betrachten des Links-Projekts ( drupal.org/project/links ). Es hat nur eine D6-Version und speichert Links in einer eigenen Tabelle, anstatt sie in ein Linkfeld einzufügen. Es verfügt jedoch über Code zum Extrahieren von Links von Knoten zum Zeitpunkt des Speicherns von Knoten und behält eine Zuordnung zwischen Links und den Knoten bei, die sie sind erscheinen in.
greg_1_anderson
1

camcam, Das beste Modul, das ich bisher gefunden habe, ist LinkIt . Es kann entweder in TinyMCE integriert oder in eigenständigen Feldern verwendet werden. Es ermöglicht die Flexibilität interner und externer Links in eigenständigen Feldern und sollte daher Ihr Problem lösen. Hoffe das hilft.

Makbeta
quelle