v1.2: Überarbeitung WYSIWYG-Admin
Verfasst: Mi 15. Jul 2015, 13:50
English version below
Unser WYSIWYG-Admin erlaubt es, zusätzliche Einstellungen für den gewählten WYSIWYG-Editor vorzunehmen. Dazu gehören z.B. auch optionale Plugins.
Mittlerweile erfordern solche Editor-Plugins aber manchmal mehr, als nur aktiviert zu werden. Für einige Plugins waren schon bisher zusätzliche Einstellmöglichkeiten hinterlegt, etwa für CodeMirror (Auswahl des Themes).
Um diese Einstellungen künftig nicht mehr hartcodiert in der Datei c_editor.php (im Modulverzeichnis des Editors, also z.B. in ./modules/ckeditor4) vorhalten zu müssen und somit leichter erweiterbar zu machen, ist eine Überarbeitung der Editor-Addons notwendig. Gleichzeitig überarbeite ich auch den WYSIWYG-Admin.
Da ein Bild ja bekanntlich mehr sagt als 1000 Worte, hier mal ein Screenshot:
Die Einstellungen, die ein Plugin erlaubt, können in einer Datei info.php hinterlegt werden. Diese Datei liegt im Unterverzeichnis des Plugins. Hier ein Beispiel für codemirror:
Zudem können für jedes Plugin auch Übersetzungen hinterlegt werden; diese liegen im Unterverzeichnis languages des jeweiligen Plugins. Das ist analog zum languages-Verzeichnis des Addons selbst, nur daß die Dateien halt im Plugin-Unterverzeichnis liegen. Beispiel:
Prinzipiell kann das natürlich jeder, der einen WYSIWYG-Editor paketiert, halten, wie er möchte. Für den CKE4 - ab Version 4.5.1, derzeit als Beta-Modul verfügbar - habe ich es jedenfalls so umgesetzt.
Unser WYSIWYG-Admin erlaubt es, zusätzliche Einstellungen für den gewählten WYSIWYG-Editor vorzunehmen. Dazu gehören z.B. auch optionale Plugins.
Mittlerweile erfordern solche Editor-Plugins aber manchmal mehr, als nur aktiviert zu werden. Für einige Plugins waren schon bisher zusätzliche Einstellmöglichkeiten hinterlegt, etwa für CodeMirror (Auswahl des Themes).
Um diese Einstellungen künftig nicht mehr hartcodiert in der Datei c_editor.php (im Modulverzeichnis des Editors, also z.B. in ./modules/ckeditor4) vorhalten zu müssen und somit leichter erweiterbar zu machen, ist eine Überarbeitung der Editor-Addons notwendig. Gleichzeitig überarbeite ich auch den WYSIWYG-Admin.
Da ein Bild ja bekanntlich mehr sagt als 1000 Worte, hier mal ein Screenshot:
- Der bisherige Text neben den Einstellmöglichkeiten wandert in einen Tooltip, im Bild gelb zu sehen.
- Die Einstellungen, die zu aktivierten Plugins gehören, werden mit Hilfe einer Überschrift gruppiert.
- Optionen, die zu bestimmten Plugins gehören, erscheinen sofort, wenn das Plugin angehakt wird, und verschwinden, wenn es wieder deaktiviert wird; bisher mußte hierfür die Seite neu geladen werden.
Die Einstellungen, die ein Plugin erlaubt, können in einer Datei info.php hinterlegt werden. Diese Datei liegt im Unterverzeichnis des Plugins. Hier ein Beispiel für codemirror:
Code: Alles auswählen
// additional requirements for this plugin
$plugin_config = array(
'opt' => array(
array( 'name' => 'codemirror', 'label' => 'CodeMirror Plugin', 'type' => 'legend' ),
array(
'name' => 'codemirror_theme',
'label' => 'Codemirror Theme',
'help' => 'Select a theme from the dropdown. You can preview the themes at <a href="http://codemirror.net/demo/theme.html" target="_blank">http://codemirror.net/demo/theme.html</a>',
'type' => 'select',
'default' => 'default',
'options' => array('default', '3024-day', '3024-night', 'ambiance-mobile', 'ambiance', 'base16-dark', 'base16-light', 'blackboard', 'cobalt', 'eclipse', 'elegant', 'erlang-dark', 'lesser-dark', 'mbo', 'mdn-like', 'midnight', 'monokai', 'neat', 'neo', 'night', 'paraiso-dark', 'paraiso-light', 'pastel-on-dark', 'rubyblue', 'solarized', 'the-matrix', 'tomorrow-night-eighties', 'twilight', 'vibrant-ink', 'xq-dark', 'xq-light',)
)
),
);
Code: Alles auswählen
<CAT_PATH>/modules/ckeditor4/ckeditor/plugins
|_ codemirror
info.php
|_ languages
|_ DE.php